Verify that os_get_time() does not fail before using the time value when

registering an eloop timeout.
This commit is contained in:
Jouni Malinen 2008-02-27 17:50:36 -08:00
parent 72822e7be4
commit a6ee047fcb

View file

@ -242,7 +242,10 @@ int eloop_register_timeout(unsigned int secs, unsigned int usecs,
timeout = os_malloc(sizeof(*timeout)); timeout = os_malloc(sizeof(*timeout));
if (timeout == NULL) if (timeout == NULL)
return -1; return -1;
os_get_time(&timeout->time); if (os_get_time(&timeout->time) < 0) {
os_free(timeout);
return -1;
}
timeout->time.sec += secs; timeout->time.sec += secs;
timeout->time.usec += usecs; timeout->time.usec += usecs;
while (timeout->time.usec >= 1000000) { while (timeout->time.usec >= 1000000) {