Revert the uptime() removal. Let the list sort it out...
This commit is contained in:
parent
8b80c71d70
commit
918f2ab3d7
@ -79,7 +79,7 @@ int arpping(uint32_t yiaddr, uint32_t ip, uint8_t *mac, char *interface)
|
||||
|
||||
/* wait arp reply, and check it */
|
||||
tm.tv_usec = 0;
|
||||
prevTime = time(NULL);
|
||||
prevTime = uptime();
|
||||
while (timeout > 0) {
|
||||
FD_ZERO(&fdset);
|
||||
FD_SET(s, &fdset);
|
||||
@ -97,8 +97,8 @@ int arpping(uint32_t yiaddr, uint32_t ip, uint8_t *mac, char *interface)
|
||||
break;
|
||||
}
|
||||
}
|
||||
timeout -= time(NULL) - prevTime;
|
||||
prevTime = time(NULL);
|
||||
timeout -= uptime() - prevTime;
|
||||
prevTime = uptime();
|
||||
}
|
||||
close(s);
|
||||
DEBUG(LOG_INFO, "%salid arp replies for this address", rv ? "No v" : "V");
|
||||
|
@ -37,6 +37,14 @@
|
||||
|
||||
static int daemonized;
|
||||
|
||||
long uptime(void)
|
||||
{
|
||||
struct sysinfo info;
|
||||
sysinfo(&info);
|
||||
return info.uptime;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* This function makes sure our first socket calls
|
||||
* aren't going to fd 1 (printf badness...) and are
|
||||
|
@ -39,6 +39,7 @@ enum syslog_levels {
|
||||
#include <syslog.h>
|
||||
#endif
|
||||
|
||||
long uptime(void);
|
||||
void background(const char *pidfile);
|
||||
void start_log_and_pid(const char *client_server, const char *pidfile);
|
||||
void background(const char *pidfile);
|
||||
|
@ -310,7 +310,7 @@ int main(int argc, char *argv[])
|
||||
|
||||
for (;;) {
|
||||
|
||||
tv.tv_sec = timeout - time(NULL);
|
||||
tv.tv_sec = timeout - uptime();
|
||||
tv.tv_usec = 0;
|
||||
|
||||
if (listen_mode != LISTEN_NONE && fd < 0) {
|
||||
@ -330,7 +330,7 @@ int main(int argc, char *argv[])
|
||||
retval = select(max_fd + 1, &rfds, NULL, NULL, &tv);
|
||||
} else retval = 0; /* If we already timed out, fall through */
|
||||
|
||||
now = time(NULL);
|
||||
now = uptime();
|
||||
if (retval == 0) {
|
||||
/* timeout dropped to zero */
|
||||
switch (state) {
|
||||
|
Loading…
Reference in New Issue
Block a user