]> git.pld-linux.org Git - projects/rc-scripts.git/blob - lib/ifdown-ppp
a70fae6ee0d51d04a7944662ccef7d55ac2bac44
[projects/rc-scripts.git] / lib / ifdown-ppp
1 #!/bin/sh
2 #
3 #       $Id$
4 #
5 PATH=/sbin:/usr/sbin:/bin:/usr/bin
6
7 . /etc/sysconfig/network
8 . /etc/rc.d/init.d/functions
9 . /lib/rc-scripts/functions.network
10
11 CONFIG=$1
12 source_config
13
14 if [ ! -f /var/run/ppp-$DEVNAME.pid ]; then
15         # ppp isn't running, or we didn't start it
16         exit 0
17 fi
18
19 # set all major variables
20 setup_ip_param
21 get_ppp_device_and_pid
22
23 if [ -z "$PID" ]; then
24         exit 1
25 fi
26
27 rm -f /var/run/ppp-$DEVNAME.pid
28
29 [ ! -d /proc/${PID} ] && exit 0
30
31 kill -TERM ${PID} > /dev/null 2>&1
32
33 sleep 2
34 [ -d /proc/${PID} ] && sleep 2 && [ -d /proc/${PID} ] && sleep 5
35
36 if [ -d /proc/${PID} ]; then
37         kill -KILL ${PID} > /dev/null 2>&1
38         logger -p daemon.info -t ifdown-ppp "ifdown-ppp unable to nicely kill pppd-$DEVICE (pppd-$DEVNAME)" &
39 fi
40
41 # Special cases
42 if is_yes "${PPPOA_EAGLE}"; then
43         EAGLECTRL="/usr/sbin/adictrl"
44         if [ ! -x $EAGLECTRL ]; then
45                 EAGLECTRL="/usr/sbin/eaglectrl"
46         fi
47         if [ -x $EAGLECTRL ]; then
48                 PPPOA_IFACE=$( $EAGLECTRL -i 2>/dev/null)
49                 [ -n "$PPPOA_IFACE" ] && ip link set "$PPPOA_IFACE" down
50         fi
51 fi
52
53 /lib/rc-scripts/ifdown-post $1
54
55 exit 1
This page took 0.040207 seconds and 2 git commands to generate.