add support for if{down,up} -a and implement proper start/stop/restart for /etc/init.d/network
add support for if{down,up} -a and implement proper start/stop/restart for /etc/init.d/network

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@6455 3c298f89-4303-0410-b956-a3cf2f4a3e73

--- a/package/base-files/files/etc/init.d/network
+++ b/package/base-files/files/etc/init.d/network
@@ -2,7 +2,7 @@
 # Copyright (C) 2006 OpenWrt.org
 
 START=40
-start() {
+boot() {
 	setup_switch() { return 0; }
 
 	include /lib/network
@@ -12,4 +12,17 @@
 	/sbin/wifi up
 }
 
+start() {
+	ifup -a
+	/sbin/wifi up
+}
 
+restart() {
+	ifup -a
+	/sbin/wifi up
+}
+
+stop() {
+	ifdown -a
+}
+

--- a/package/base-files/files/sbin/ifdown
+++ b/package/base-files/files/sbin/ifdown
@@ -1,8 +1,15 @@
 #!/bin/sh
 # Copyright (C) 2006 OpenWrt.org
 
+. /etc/functions.sh
 [ $# = 0 ] && { echo "  $0 <group>"; exit; }
-. /etc/functions.sh
+[ "x$1" = "x-a" ] && {
+	config_cb() {
+		[ -z "$2" ] || eval "$0 $2"
+	}
+	config_load network
+	exit
+}
 include /lib/network
 scan_interfaces
 

comments