diff options
author | brian <brian@FreeBSD.org> | 1997-05-14 01:14:32 +0000 |
---|---|---|
committer | brian <brian@FreeBSD.org> | 1997-05-14 01:14:32 +0000 |
commit | 0a48c2a0e8eb9589e753ec67c9d05e964e76c931 (patch) | |
tree | 567793af8953042b30cacce383294bb260c61b6c /usr.sbin/ppp/modem.c | |
parent | 07d84668b5a2a07896b87f9386a782c2c17834f9 (diff) | |
download | FreeBSD-src-0a48c2a0e8eb9589e753ec67c9d05e964e76c931.zip FreeBSD-src-0a48c2a0e8eb9589e753ec67c9d05e964e76c931.tar.gz |
Don't attempt to ioctl(modem...) when modem is
closed. Just DownConnection().
Diffstat (limited to 'usr.sbin/ppp/modem.c')
-rw-r--r-- | usr.sbin/ppp/modem.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/usr.sbin/ppp/modem.c b/usr.sbin/ppp/modem.c index 5f80fa6..6271efe 100644 --- a/usr.sbin/ppp/modem.c +++ b/usr.sbin/ppp/modem.c @@ -17,7 +17,7 @@ * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. * - * $Id: modem.c,v 1.35 1997/05/10 01:22:17 brian Exp $ + * $Id: modem.c,v 1.36 1997/05/10 03:39:54 brian Exp $ * * TODO: */ @@ -228,6 +228,7 @@ DownConnection() void ModemTimeout() { + static int waiting; int ombits = mbits; int change; @@ -237,6 +238,13 @@ ModemTimeout() StartTimer(&ModemTimer); if (dev_is_modem) { + if (modem < 0) { + if (!waiting) + DownConnection(); + waiting = 1; + return; + } + waiting = 0; if (ioctl(modem, TIOCMGET, &mbits) < 0) { LogPrintf(LOG_PHASE_BIT, "ioctl error (%s)!\n", strerror(errno)); DownConnection(); |