Fix errors detected by valgrind

I tried running chronyd in valgrind and the result was that there are four
places where memory is not initialized. A patch fixing the errors is in the
attachment.
This commit is contained in:
Miroslav Lichvar 2008-11-05 23:48:58 +00:00 committed by Richard P. Curnow
parent bc0aaa9217
commit 8336f14680
3 changed files with 12 additions and 3 deletions

View file

@ -166,7 +166,7 @@ CAM_Initialise(void)
int port_number;
struct sockaddr_in my_addr;
unsigned long bind_address;
int on_off;
int on_off = 1;
if (initialised) {
CROAK("Shouldn't be initialised");
@ -1631,11 +1631,13 @@ read_from_cmd_socket(void *anything)
tx_message.reply = htons(RPY_NULL);
tx_message.number = htons(1);
tx_message.total = htons(1);
tx_message.pad1 = 0;
tx_message.utoken = htonl(utoken);
/* Set this to a default (invalid) value. This protects against the
token field being set to an arbitrary value if we reject the
message, e.g. due to the host failing the access check. */
tx_message.token = htonl(0xffffffffUL);
memset(&tx_message.auth, 0, sizeof(tx_message.auth));
remote_ip = ntohl(where_from.sin_addr.s_addr);
remote_port = ntohs(where_from.sin_port);

View file

@ -300,6 +300,9 @@ create_instance(NTP_Remote_Address *remote_addr, NTP_Mode mode, SourceParameters
result->tx_count = 0;
result->remote_orig.hi = 0;
result->remote_orig.lo = 0;
result->score = 0;
if (params->online) {

View file

@ -721,8 +721,12 @@ SST_PredictOffset(SST_Stats inst, struct timeval *when)
if (inst->n_samples < 3) {
/* We don't have any useful statistics, and presumably the poll
interval is minimal. We can't do any useful prediction other
than use the latest sample */
than use the latest sample or zero if we don't have any samples */
if (inst->n_samples > 0) {
return inst->offsets[inst->n_samples - 1];
} else {
return 0.0;
}
} else {
UTI_DiffTimevalsToDouble(&elapsed, when, &inst->offset_time);
return inst->estimated_offset + elapsed * inst->estimated_frequency;