[BusyBox] Problems with PPP

Simon Kallweit simon.kallweit at intefo.ch
Fri Nov 19 16:54:52 UTC 2004


Hi guys

I'm working on an embedded system on the Hynix ARM 7202 processor.
Currently I'm having strange problems with the ppp daemon.
We use busybox 1.0 for the linux environment with the busybox ash 
console. We use the following toolchain:
binutils-2.15 gcc-3.3.2 glibc-2.3.2 glibc-linuxthreads-2.3.2 gdb-6.1
We use a patched 2.6.9 kernel (Hynix patches from www.pengutronix.de)

When I start the pppd, I get a segmentation fault. I can dump the 
options (with the dump option) successfully. Here's a dump of my console:

# pppd
pppd options in effect:
debug           # (from /etc/ppp/options)
nodetach                # (from /etc/ppp/options)
holdoff 1               # (from /etc/ppp/options)
idle 600                # (from /etc/ppp/options)
persist         # (from /etc/ppp/options)
maxfail 3               # (from /etc/ppp/options)
ktune           # (from /etc/ppp/options)
dump            # (from /etc/ppp/options)
noauth          # (from /etc/ppp/options)
/dev/modem              # (from /etc/ppp/options)
57600           # (from /etc/ppp/options)
lock            # (from /etc/ppp/options)
connect /etc/ppp/peers/pppd-connect             # (from /etc/ppp/options)
crtscts         # (from /etc/ppp/options)
mtu 1500                # (from /etc/ppp/options)
ipcp-accept-local               # (from /etc/ppp/options)
ipcp-accept-remote              # (from /etc/ppp/options)
noipdefault             # (from /etc/ppp/options)
defaultroute            # (from /etc/ppp/options)
Segmentation fault (core dumped)

When I throw the core dump into my patched GDB (so it can cross process 
core dumps) i get the following:

Core was generated by `pppd'.
Program terminated with signal 11, Segmentation fault.

warning: Wrong size fpregset in core file.
Reading symbols from /lib/libcrypt.so.1...(no debugging symbols 
found)...done.
Loaded symbols for /lib/libcrypt.so.1
Reading symbols from /lib/libdl.so.2...(no debugging symbols found)...done.
Loaded symbols for /lib/libdl.so.2
Reading symbols from /lib/libc.so.6...(no debugging symbols found)...done.
Loaded symbols for /lib/libc.so.6
Reading symbols from /lib/ld-linux.so.2...(no debugging symbols 
found)...done.
Loaded symbols for /lib/ld-linux.so.2
Reading symbols from /lib/libnss_compat.so.2...(no debugging symbols 
found)...done.
Loaded symbols for /lib/libnss_compat.so.2
Reading symbols from /lib/libnsl.so.1...(no debugging symbols found)...done.
Loaded symbols for /lib/libnsl.so.1
#0  0x400d3684 in strptime () from /lib/libc.so.6

I really think that my problem is related to busybox. Because on our 
older environment (kernel 2.4.21) which wasn't using busybox, the pppd 
was working. I also moved that binary to my new system, and experienced 
the same segmentation fault. I also had the same problem with busybox 
1.0-rc2. I found a pppd busybox applet on the web, which I then 
integrated into busybox. With that applet (pppd 2.4.1) it worked 
perfectly! But for the new system i'd really like to have pppd 
standalone. Also, when I tried to integrate the pppd applet into the new 
busybox (1.0 final) it gave me some ugly compile errors (I guess due to 
the kernel update). So i'd have to adapt the applet for our new environment.

I just hoped that maybe someone else has had the same problem. Otherwise 
i'll have to dive into the matter a bit more :)

Thanks in advance

Simon Kallweit




More information about the busybox mailing list