keep track of the network interface states (stored in uci format in /var/state/networ...
[openwrt/svn-archive/archive.git] / package / ppp / files / etc / ppp / ip-down
1 #!/bin/sh
2 PPP_IFACE="$1"
3 PPP_TTY="$2"
4 PPP_SPEED="$3"
5 PPP_LOCAL="$4"
6 PPP_REMOTE="$5"
7 PPP_IPPARAM="$6"
8 export PPP_IFACE PPP_TTY PPP_SPEED PPP_LOCAL PPP_REMOTE PPP_IPPARAM
9 [ -z "$PPP_IPPARAM" ] || {
10 env -i ACTION="ifdown" INTERFACE="$PPP_IPPARAM" DEVICE="$PPP_IFACE" PROTO=ppp /sbin/hotplug-call "iface"
11
12 # remove the interface's network state
13 FILE=/var/state/network.$$
14 grep -v "^config_set '$PPP_IPPARAM' " /var/state/network > "$FILE"
15 mv "$FILE" /var/state/network
16 }
17
18 [ -d /etc/ppp/ip-down.d ] && {
19 for SCRIPT in /etc/ppp/ip-down.d/*
20 do
21 [ -x "$SCRIPT" ] && "$SCRIPT" $@
22 done
23 }