From dcf9e6a5b23909c55ffbf90ba23feefe91fefe63 Mon Sep 17 00:00:00 2001 From: Brian Somers Date: Tue, 10 Feb 1998 22:33:43 +0000 Subject: [PATCH] Move handle_signals() to before the FD_SETs. handle_signals() may result in a our modem closing after it's made its way into the fd_set, resulting in a program exit (with select(): bad file descriptor) rather than a dropped link. --- usr.sbin/ppp/main.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/usr.sbin/ppp/main.c b/usr.sbin/ppp/main.c index 6418acabb21..3fef84add7f 100644 --- a/usr.sbin/ppp/main.c +++ b/usr.sbin/ppp/main.c @@ -17,7 +17,7 @@ * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. * - * $Id: main.c,v 1.120 1998/01/27 23:14:51 brian Exp $ + * $Id: main.c,v 1.121 1998/01/29 00:42:05 brian Exp $ * * TODO: * o Add commands for traffic summary, version display, etc. @@ -885,6 +885,11 @@ DoLoop(void) IpStartOutput(); qlen = ModemQlen(); } + +#ifdef SIGALRM + handle_signals(); +#endif + if (modem >= 0) { if (modem + 1 > nfds) nfds = modem + 1; @@ -910,8 +915,6 @@ DoLoop(void) */ usleep(TICKUNIT); TimerService(); -#else - handle_signals(); #endif /* If there are aren't many packets queued, look for some more. */