diff options
author | John-Mark Gurney <jmg@FreeBSD.org> | 2003-06-15 03:05:14 +0000 |
---|---|---|
committer | John-Mark Gurney <jmg@FreeBSD.org> | 2003-06-15 03:05:14 +0000 |
commit | b6a0d4720e331fd924e9e62cd8f8251cbcf3743b (patch) | |
tree | 34eb01b403fef6694d3b10c4636305dcab4ae664 /libexec | |
parent | 9c6bbd7d324414f352239c585101ad5f638c9b3d (diff) |
Notes
Diffstat (limited to 'libexec')
-rw-r--r-- | libexec/bootpd/bootpd.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/libexec/bootpd/bootpd.c b/libexec/bootpd/bootpd.c index 1fd2f6ef1d1b0..d4af2e1718744 100644 --- a/libexec/bootpd/bootpd.c +++ b/libexec/bootpd/bootpd.c @@ -186,7 +186,8 @@ main(argc, argv) struct hostent *hep; char *stmp; int n, ba_len, ra_len; - int nfound, readfds; + int nfound; + fd_set readfds; int standalone; #ifdef SA_NOCLDSTOP /* Have POSIX sigaction(2). */ struct sigaction sa; @@ -503,14 +504,15 @@ main(argc, argv) /* * Process incoming requests. */ + FD_ZERO(&readfds); for (;;) { struct timeval tv; - readfds = 1 << s; + FD_SET(s, &readfds); if (timeout) tv = *timeout; - nfound = select(s + 1, (fd_set *)&readfds, NULL, NULL, + nfound = select(s + 1, &readfds, NULL, NULL, (timeout) ? &tv : NULL); if (nfound < 0) { if (errno != EINTR) { @@ -530,7 +532,7 @@ main(argc, argv) } continue; } - if (!(readfds & (1 << s))) { + if (!FD_ISSET(s, &readfds)) { if (debug > 1) report(LOG_INFO, "exiting after %ld minutes of inactivity", actualtimeout.tv_sec / 60); |