aboutsummaryrefslogtreecommitdiffstats
path: root/network-scripts/ifdown-ippp
diff options
context:
space:
mode:
Diffstat (limited to 'network-scripts/ifdown-ippp')
-rwxr-xr-xnetwork-scripts/ifdown-ippp34
1 files changed, 34 insertions, 0 deletions
diff --git a/network-scripts/ifdown-ippp b/network-scripts/ifdown-ippp
new file mode 100755
index 00000000..ed203997
--- /dev/null
+++ b/network-scripts/ifdown-ippp
@@ -0,0 +1,34 @@
+#! /bin/sh
+
+PATH=/sbin:/usr/sbin:/bin:/usr/bin
+
+# Get global network configuration
+[ -f /etc/sysconfig/network ] && . /etc/sysconfig/network
+
+CONFIG=$1
+
+. ./$CONFIG
+
+# stopping ibod daemon for channel bundling
+if [ -f /var/lock/subsys/ibod ] ; then
+ kill -9 $(pidof ibod) >/dev/null 2>&1
+ rm -f /var/lock/subsys/ibod
+fi
+
+# Shut down IPv6
+/etc/sysconfig/network-scripts/ifdown-ipv6 $CONFIG
+
+# shutdown isdn device
+isdnctrl hangup $DEVICE >/dev/null 2>&1
+sleep 1
+ip link set dev $DEVICE down >/dev/null 2>&1
+
+# delete isdn device
+isdnctrl delif $DEVICE >/dev/null 2>&1
+
+# kill ipppd daemon
+if [ -f /run/ipppd.$DEVICE.pid ] ; then
+ pppdpid=$(cat /run/ipppd.$DEVICE.pid)
+ kill -9 $pppdpid > /dev/null 2>&1
+ rm -f /run/ipppd.$DEVICE.pid > /dev/null 2>&1
+fi