diff options
author | Brian Somers <brian@FreeBSD.org> | 1999-12-23 21:43:25 +0000 |
---|---|---|
committer | Brian Somers <brian@FreeBSD.org> | 1999-12-23 21:43:25 +0000 |
commit | e62ce959d08c7468e4261773593a08443a6b5d58 (patch) | |
tree | 2bce184866bd117da7ad73141ca24f85343db039 /usr.sbin/ppp/bundle.c | |
parent | 1bbd8362c742552618d2d3ed34370a349b470d7f (diff) | |
download | src-test2-e62ce959d08c7468e4261773593a08443a6b5d58.tar.gz src-test2-e62ce959d08c7468e4261773593a08443a6b5d58.zip |
Notes
Diffstat (limited to 'usr.sbin/ppp/bundle.c')
-rw-r--r-- | usr.sbin/ppp/bundle.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/usr.sbin/ppp/bundle.c b/usr.sbin/ppp/bundle.c index c61f388104a8..d55172d1b940 100644 --- a/usr.sbin/ppp/bundle.c +++ b/usr.sbin/ppp/bundle.c @@ -1697,6 +1697,16 @@ bundle_setsid(struct bundle *bundle, int holdsession) char done; struct datalink *dl; + if (!holdsession && bundle_IsDead(bundle)) { + /* + * No need to lose our session after all... we're going away anyway + * + * We should really stop the timer and pause if holdsession is set and + * the bundle's dead, but that leaves other resources lying about :-( + */ + return; + } + orig = getpid(); if (pipe(fds) == -1) { log_Printf(LogERROR, "pipe: %s\n", strerror(errno)); |