Add a section on dealing with seg-faults in ppp.

This commit is contained in:
Brian Somers 1998-01-17 14:12:59 +00:00
parent e8381a9651
commit 2d0ac61e1e
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=2369

View file

@ -1,4 +1,4 @@
<!-- $Id: network.sgml,v 1.4 1997-12-15 23:38:10 brian Exp $ -->
<!-- $Id: network.sgml,v 1.5 1998-01-17 14:12:59 brian Exp $ -->
<!-- The FreeBSD Documentation Project -->
<sect>
@ -568,6 +568,57 @@ default 10.0.0.2 UGSc 0 0 tun0
ATDT1234567
</verb>
<sect2>
<heading>Ppp gets a seg-fault, but I see no <tt/ppp.core/ file</heading>
<p>Ppp (or any other program for that matter) should never
dump core. Because ppp runs with an effective user id of 0,
the operating system will not write ppps core image to disk
before terminating it. If, however ppp <bf/is/ actually
termating due to a segmentation violation or some other
signal that normally causes core to be dumped, <bf/and/ you're
sure you're using the latest version (see the start of this
section), then you should do the following:
<verb>
$ tar xfz ppp-*.src.tar.gz
$ cd ppp*/ppp
$ echo STRIP= >>Makefile
$ echo CFLAGS+=-g >>Makefile
$ make clean all
$ su
# make install
# chmod 555 /usr/sbin/ppp
</verb>
<p>You will now have a debuggable version of ppp installed. You
will have to be root to run ppp as all of its privileges have
been revoked. When you start ppp, take a careful note of what
your current directory was at the time.
<p>Now, if and when ppp receives the segmentation violation, it
will dump a core file called ppp.core. You should then do the
following:
<verb>
$ su
# gdb /usr/sbin/ppp ppp.core
(gdb) bt
.....
(gdb) f 0
.....
(gdb) i args
.....
(gdb) l
.....
</verb>
<p>All of this information should be given alongside your
question, making it possible to diagnose the problem.
<p>If you're familiar with gdb, you may wish to find out some
other bits and pieces such as what actually caused the dump and
the addresses & values of the relevant variables.
<sect2>
<heading>None of this helps - I'm desperate !</heading>