#!/bin/bash # # This is the standard ppp-off script that comes with ppp-2.?.?, it's # been expanded to include the -d option for pppsetup. (1-17-98) # ###################################################################### # # Determine the device to be terminated. # if [ "$1" = "" ]; then DEVICE=ppp0 elif [ ! "$1" = "-d" ]; then DEVICE=$1 elif [ "$1" = "-d" ]; then DEVICE=ppp0 elif [ ! "$1" = "" ] && [ "$2" = "-d" ]; then DEVICE=$1 fi ###################################################################### # # This just checks if demand dialing is running, if so it # says Demand Dialing Stoped. ps x 2>/dev/null > /tmp/grep.tmp if grep 2>/dev/null "options.demand" /tmp/grep.tmp >/dev/null then rm -f /tmp/grep.tmp D="echo Demand Dialing Stoped." else rm -f /tmp/grep.tmp fi # # If the ppp0 pid file is present then the program is running. Stop it. if [ -r /var/run/$DEVICE.pid ]; then kill -INT `cat /var/run/$DEVICE.pid` # # If the kill did not work then there is no process running for this # pid. It may also mean that the lock file will be left. You may wish # to delete the lock file at the same time. if [ ! "$?" = "0" ]; then killall -INT pppd 2>/dev/null rm -f /var/run/$DEVICE.pid rm -f /var/lock/LCK* echo "ERROR: No pppd process running, removed stale pid file." exit 1 fi # # Success. Let pppd clean up its own junk. echo "PPP link to [$DEVICE] terminated." $D if [ "$1" = "-d" ]; then pppd file "/etc/ppp/options.demand" || exit 1 echo "Demand Dialing Started." exit 0 elif [ "$2" = "-d" ]; then pppd file "/etc/ppp/options.demand" || exit 1 echo "Demand Dialing Started." exit 0 else exit 0 fi fi # # The ppp process is not running for ppp0 echo "ERROR: PPP link is not active on: [$DEVICE]" exit 1