diff options
author | Felix Fietkau <nbd@openwrt.org> | 2011-10-21 01:47:49 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2011-10-21 01:47:49 +0000 |
commit | 55aeabae10d9429de0453d6df4271426478b406b (patch) | |
tree | cb77e67888dff2800c29051dfe2673e40c56d2eb /package/netifd/files/sbin/ifup | |
parent | 2ccd191b76f600d99d4b8ee15bb8fd1d0f2cf616 (diff) | |
download | upstream-55aeabae10d9429de0453d6df4271426478b406b.tar.gz upstream-55aeabae10d9429de0453d6df4271426478b406b.tar.bz2 upstream-55aeabae10d9429de0453d6df4271426478b406b.zip |
add an initial (experimental) version of netifd, disabled by default
SVN-Revision: 28499
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 0000000000..1036943ab2 --- /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" |