From 9e6cbca366809d2da3273ba76e22b1b195ac0428 Mon Sep 17 00:00:00 2001 From: "Eric S. Raymond" Date: Thu, 26 Dec 1996 18:56:47 +0000 Subject: Support interface check in foreground as well as daemon mode. svn path=/trunk/; revision=697 --- fetchmail.c | 20 +++++++++++++------- interface.c | 2 -- 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/fetchmail.c b/fetchmail.c index 61bafc4c..7952523d 100644 --- a/fetchmail.c +++ b/fetchmail.c @@ -335,6 +335,13 @@ int main (int argc, char **argv) * reflect the status of that transaction. */ do { +#ifdef linux + if (poll_interval && monitor) + sleep(3); /* allow some time for the link to quiesce */ + + interface_note_activity(); +#endif + if (poll_interval) { if (outlevel == O_VERBOSE) @@ -351,10 +358,6 @@ int main (int argc, char **argv) * We'll just assume setitimer(2) is available since fetchmail * has to have a BSDoid socket layer to work at all. */ -#ifdef linux - do { - interface_note_activity(); -#endif { struct itimerval ntimeout; @@ -370,9 +373,6 @@ int main (int argc, char **argv) (void) error(0, 0, "awakened by SIGUSR1"); } } -#ifdef linux - } while (!interface_approve()); -#endif if (outlevel == O_VERBOSE) { @@ -383,6 +383,12 @@ int main (int argc, char **argv) } } + +#ifdef linux + if (!interface_approve()) + continue; +#endif + #ifdef HAVE_RES_SEARCH sethostent(TRUE); /* use TCP/IP for mailserver queries */ #endif /* HAVE_RES_SEARCH */ diff --git a/interface.c b/interface.c index 39b39922..20d5e8ca 100644 --- a/interface.c +++ b/interface.c @@ -144,8 +144,6 @@ void interface_note_activity(void) { ifinfo_t ifinfo; - sleep(3); /* allow some time for the link to quiesce */ - /* get the current I/O stats for the monitored link */ if (monitor && get_ifinfo(monitor, &ifinfo)) monitor_io = ifinfo.rx_packets + ifinfo.tx_packets; -- cgit v1.2.3