From Bugzilla Helper: User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:0.9.6) Gecko/20011120 Description of problem: Summary says it already. In the pppd code, a fatal() error calls the die() function directly which bypasses useful termination-related code in main() such as the link stats printing code. Version-Release number of selected component (if applicable): 2.4.1-2 How reproducible: Always Steps to Reproduce: 1. run a PPP connection until something causes pppd to exit with a "fatal" error 2. See logs and observe the missing link stats in comparison with other connections that exited less abnormally. Actual Results: gateway pppd[.]: LCP terminated by peer gateway pppoe[.]: Session terminated -- received PADT from peer gateway pppd[.]: ioctl(PPPIOCSASYNCMAP): Inappropriate ioctl for device(25) gateway pppd[.]: tcflush failed: Input/output error gateway pppd[.]: Exit. Expected Results: gateway pppd[.]: LCP terminated by peer gateway pppoe[.]: Session terminated -- received PADT from peer gateway pppd[.]: ioctl(PPPIOCSASYNCMAP): Inappropriate ioctl for device(25) gateway pppd[.]: tcflush failed: Input/output error gateway pppd[.]: Connect time xy.z minutes. gateway pppd[.]: Sent X bytes, received Y bytes. gateway pppd[.]: Exit. Additional info: This bug causes pppd to not log important information such as required by traffic summary Perl/PHP scripts.
Created attachment 38363 [details] untested patch #8 to be used in ppp.spec
Created attachment 38443 [details] revised patch
Here's a revised patch and confirmation that it works as expected. I've had to move initialization of a guard to the very beginning of main() to not introduce any side-effects.
Created attachment 39347 [details] revised patch - no duplicate logging :)
*sigh* Errata package 2.4.1-3 is without this patch. Had to downgrade to my own ppp package to avoid losing link statistics on a gateway again. Please apply my patch from 2001-12-02 05:21:57. I had shipped it upstream to the pppd maintainer and it has been included there.
Bug unfixed in Red Hat Linux 7.2, 7.3 and 8.0.
See revision 1.108 in PPP CVS here: http://pserver.samba.org/cgi-bin/cvsweb/ppp/pppd/main.c http://pserver.samba.org/cgi-bin/cvsweb/ppp/pppd/main.c.diff?r1=1.107&r2=1.108&f=h
triage->easyfix : see attachment (id=39347)
Could you please check if it is fixed in ppp 2.4.2, which was recently released?
Yes. Reading the diff between ppp 2.4.1 and ppp 2.4.2, the fix is still included, and it doesn't look as if later CVS comits had messed it up in any way.
Fixed with ppp-2.4.2-2.