All pastes #91748 Raw Edit

Something

public text v1 · immutable
#91748 ·published 2006-07-18 21:37 UTC
rendered paste body
#!/sbin/runscript
# $Header: $

depend() {
need net
after modules
}

start() {
einfo "Starting Internet connection..."

ebegin " Checking interface..."
CheckIFace
eend

ebegin " Checking line status..."
CheckLine
eend

ebegin " Bringing ${IFLink} up"
if [ -x "$(which pppd)" ]
then
if [ -f "/etc/ppp/peers/${Peer}" ]
then
einfo "  Conncting to ${Peer}..."
start-stop-daemon --start\
--exec $(which pppd) call ${Peer} > /dev/null
else
eend "  ${Peer} not found in /etc/ppp/peers"
fi
else
eend "  pppd daemon not found"
fi
eend
}

stop() {
einfo "Stopping Internet connection..."

ebegin " Bringing ${IFLink} down"
if [ -x "$(which ifconfig)" ]
then

if [ -z "$(/sbin/ifconfig | egrep "$IFLink")" ]
then
# Link is not up but pppd may be running
ewarn "  Interface seems to be down already"
fi

einfo "  Stopping pppd"
start-stop-daemon --stop --pidfile /var/run/${IFLink}.pid

fi
eend

}

################################################################################

CheckLine() {

if [ "`cat /proc/net/atm/ueagle-atm:0 | grep Line | grep up | wc -l | awk '{print$1}'`" != "0" ]
then
pppd call ${Peer}
else
sleep 5
CheckLine
fi
}

CheckIFace() {

if [ -e "/var/run/${IFLink}.pid" ] \
&& [ -n "$(/sbin/ifconfig | grep $IFLink)" ]
then
einfo " Connection already established. Exiting"
exit

elif [ -e "/var/run/${IFLink}.pid" ] \
&& [ -n "$(/sbin/ifconfig | grep $IFLink)" ]
then
ewarn " ${IFLink} link is up but there is no established\
conncetion. Killing ${IFLink} process..."
start-stop-daemon --stop --pidfile /var/run/${IFLink}.pid
einfo "  Done ;)"
fi
}

# vim:ts=4