Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 29 Apr 1996 09:19:51 -0600
From:      Nate Williams <nate@sri.MT.net>
To:        smarq@ucthpx.uct.ac.za (S Marquard)
Cc:        freebsd-questions@freebsd.org
Subject:   Re: PPPD doesn't die cleanly in 2.1-R (bug?)
Message-ID:  <199604291519.JAA27570@rocky.sri.MT.net>
In-Reply-To: <m0uDoFJ-000vaeC@ucthpx.uct.ac.za>
References:  <m0uDoFJ-000vaeC@ucthpx.uct.ac.za>

next in thread | previous in thread | raw e-mail | index | archive | help
> In the pppd (kernel PPP) in 2.1-RELEASE, if a pppd process dies
> on a read error, the cleanup procedures are never called.

Actually, 'die()' is the generic cleanup process.

...
> I fixed this problem by the following patch to 
> /usr/src/usr.sbin/pppd/sys-bsd.c:
> 
> *** sys-bsd.c.OLD	Mon Feb 26 22:11:17 1996
> --- sys-bsd.c	Mon Apr 29 10:13:09 1996
> ***************
> *** 168,173 ****
> --- 168,174 ----
>   	    return -1;
>   	}
>   	syslog(LOG_ERR, "read(fd): %m");
> + 	lcp_lowerdown(0);		/* die cleanly */

Would it be better to add lcp_lowerdown() to die(), which would fix any
occurance of PPPD dying abnormally and not cleaning things up correctly?

(I didn't look at this too closely, but it seems to be a better
'generic' fix for the problem.)

If you could add the code to die() and test it I would certainly be
willing to commit it.


Nate



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199604291519.JAA27570>