I use rp3 to dial up and connect to my ATT worldnet acct. rp3 -i ppp0 will start the GUI, and I click the button to connect. Modem connects and network is configured properly. Problem is with GUI. It does not recognize it is now connected, and does not show link usage. A button click again does not disconnect, but tries again to connect.
*** Bug 37717 has been marked as a duplicate of this bug. ***
I have the same problem and in my case the cause is as follows: In /etc/sysconfig/network-scripts/network-functions (this script has changed from 7.0 to 7.1) the do_netreport() function contains the line: su $OWNER -c "kill -SIGIO $i > /dev/null 2>&1" > /dev/null 2>&1 || \ rm -f $i >/dev/null 2>&1 but su apparently returns false in all situations and the $i file is therefore being deleted regardless. Changing the line to: su $OWNER -c "kill -SIGIO $i > /dev/null 2>&1 || \ rm -f $i >/dev/null 2>&1" > /dev/null 2>&1 fixed the problem for me. This isn't specific to rp3. It may have a bearing on some of the bugs reported under ppp-watch etc. but I haven't gone back to check yet.
Will be fixed in initscripts-5.88-1.
*** Bug 39603 has been marked as a duplicate of this bug. ***
This fix only works for me if run the "rp3 -i ppp0" command as su.
The fix did not work for me: what worked (at least so far) is just copying the old (RH7.0) network-functions over the new. (there are other differences other than that). Here is the diff new old 20,33d19 < toggle_value() < { < if [ -z "$2" ] < then < echo '' < elif [ "$2" = "yes" -o "$2" = "YES" ] ; then < echo "$1" < elif [ "$2" = "no" -o "$2" = "NO" ] ; then < echo "-$1" < else < echo '' < fi < } < 39,43c25,27 < if [ -f $i ]; then < OWNER=`ls -l $i | awk '{ print $3 }'` < su $OWNER -c "kill -SIGIO $i > /dev/null 2>&1 || \ < rm -f $i >/dev/null 2>&1" > /dev/null 2>&1 < fi --- > [ -f $i ] && \ > kill -SIGIO $i >/dev/null 2>&1 || \ > rm -f $i >/dev/null 2>&1 69,76c53 < if echo ${DEVICE} | grep -q ':' ; then < if LANG=C ifconfig -a 2>/dev/null | grep -q ${DEVICE} ; then < retcode=1 < else < retcode=0 < fi < else < if LANG=C ifconfig ${DEVICE} 2>/dev/null | grep " UP " >/dev/null 2>&1 ; then --- > if ifconfig ${DEVICE} 2>/dev/null | grep UP >/dev/null 2>&1 ; then 78c55 < else --- > else 80d56 < fi 111,115c87 < if [ "$GATEWAY" = "0.0.0.0" ]; then < /sbin/route add default ${GATEWAYDEV} < else < /sbin/route add default gw ${GATEWAY} ${GATEWAYDEV} < fi --- > /sbin/route add default gw ${GATEWAY} ${GATEWAYDEV}
The fix proposed by corlet 2001-05-07 18:07:33 does not work for me. The files in /var/run/netreport don't get deleted, but for some reason the SIGIO signal is not sent to rp3. If I send the signal manually (ie look up the pid using "ps aux" or look in /var/run/netreport) and do "/bin/kill -SIGIO pid" then the GUI comes around and does its thing. After hanging up, I need to send that signal again, to make the GUI realise that the connection is down. (I haven't tried running rp3 as root.)
There is still a problem with the famous line in the do_netreport function in /etc/sysconfig/network-scripts/network-functions. The problem is that the redirections of stdout and stderr are written in the syntax of a particular shell (bash), but the su command invokes the shell specified by the user. This results in a failure if the user uses eg the tcsh. To fix the problem, tell su to always use bash: su $OWNER -s /bin/bash -c "kill -SIGIO $i > /dev/null 2>&1 || \ rm -f $i >/dev/null 2>&1" > /dev/null 2>&1 This fixed the problem for me. Also, I suspect it accounts for the fact that the previous fix only worked for some people (those using bash) and why rp3 would work if called as root (because root used the bash shell).