← Commit list

918f2ab3d

Rob Landley
Rob Landley
2005-05-04
FAILED Duration: 25s

Subject

Revert the uptime() removal. Let the list sort it out...

Binary

No binary (build failed)

Architecture & Compiler Flags

Architecture: x86_64-linux-gnu Compiler: gcc (Ubuntu 11.4.0-1ubuntu1~22.04.3) 11.4.0

—

Build Log

(log yok)

Commit Diff GitHub →

networking/udhcp/arpping.c+3 -3
@@ -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");
networking/udhcp/common.c+8 -0
@@ -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
networking/udhcp/common.h+1 -0
@@ -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);
networking/udhcp/dhcpc.c+2 -2
@@ -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) {