diff options
| author | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2011-10-21 01:47:49 +0000 | 
|---|---|---|
| committer | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2011-10-21 01:47:49 +0000 | 
| commit | f85eb6d428598db0d0c0e4b9e94d8d0bcab0f512 (patch) | |
| tree | 23e29d8252f2ea52ba54d8cd62dbc73ee883af37 /package/netifd/files/sbin/ifup | |
| parent | 799c0920c5e6dafbd5803c124523614fe6a637b0 (diff) | |
add an initial (experimental) version of netifd, disabled by default
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@28499 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/netifd/files/sbin/ifup')
| -rwxr-xr-x | package/netifd/files/sbin/ifup | 27 | 
1 files changed, 27 insertions, 0 deletions
diff --git a/package/netifd/files/sbin/ifup b/package/netifd/files/sbin/ifup new file mode 100755 index 000000000..1036943ab --- /dev/null +++ b/package/netifd/files/sbin/ifup @@ -0,0 +1,27 @@ +#!/bin/sh + +case "$0" in +	*ifdown) modes=down;; +	*ifup) modes="down up";; +	*) echo "Invalid command: $0";; +esac + +if_call() { +	local interface="$1" +	for mode in $modes; do +		ubus call $interface $mode +	done +} + +[[ "$1" == "-a" ]] && { +	for interface in `ubus -S list 'network.interface.*'`; do +		if_call "$interface" +	done +	exit +} + +ubus -S list "network.interface.$1" > /dev/null || { +	echo "Interface $1 not found" +	exit +} +if_call "network.interface.$1"  | 
