summaryrefslogtreecommitdiffstats
path: root/openwrt/package/base-files/default/sbin/ifdown
blob: f2f8bbfe8168d9065aa3b30162c802a1ba346c5d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#!/bin/sh
[ $# = 0 ] && { echo "  $0 <group>"; exit; }
. /etc/functions.sh
. /etc/network.overrides  
[ "$FAILSAFE" != "true" -a -e /etc/config/network ] && . /etc/config/network

type=$1
debug "### ifdown $type ###"

if=$(nvram get ${type}_ifname)
proto=$(nvram get ${type}_proto)
if_valid $if && $DEBUG ifconfig $if down
kill $(cat /var/run/${if}.pid 2>&-) 2>&-
killall ifup.$proto >&- 2>&-
case "$proto" in
	pptp|pppoe) killall pppd >&- 2>&- ;;
	static) env -i ACTION="ifdown" INTERFACE="$if" PROTO=static /sbin/hotplug "iface" ;;
esac