summaryrefslogtreecommitdiffstats
path: root/package/base-files
diff options
context:
space:
mode:
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2006-11-03 21:57:35 +0000
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2006-11-03 21:57:35 +0000
commit4df90b50819f595145d956e7e148aeff3342d14c (patch)
tree977b8b16d8139c57517026deafee380369312a3f /package/base-files
parent6e37e1ce8f87c1bcf08b845c335f294949a5ecfd (diff)
add config option for autostart of network interfaces
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@5425 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/base-files')
-rw-r--r--package/base-files/default/etc/hotplug.d/net/10-net9
-rwxr-xr-xpackage/base-files/default/lib/network/config.sh5
2 files changed, 13 insertions, 1 deletions
diff --git a/package/base-files/default/etc/hotplug.d/net/10-net b/package/base-files/default/etc/hotplug.d/net/10-net
index 4e5c3041b..9b72338ce 100644
--- a/package/base-files/default/etc/hotplug.d/net/10-net
+++ b/package/base-files/default/etc/hotplug.d/net/10-net
@@ -4,7 +4,14 @@ include /lib/network
addif() {
scan_interfaces
- setup_interface "$INTERFACE"
+ local cfg="$(find_config "$INTERFACE")"
+
+ # check the autoload setting
+ config_get auto "$cfg" auto
+ case "$auto" in
+ 1|on|enabled) setup_interface "$INTERFACE";;
+ esac
+
# find all vlan configurations for this interface and set them up as well
for ifc in $interfaces; do
diff --git a/package/base-files/default/lib/network/config.sh b/package/base-files/default/lib/network/config.sh
index 9c91a7cab..502377b60 100755
--- a/package/base-files/default/lib/network/config.sh
+++ b/package/base-files/default/lib/network/config.sh
@@ -27,6 +27,11 @@ scan_interfaces() {
local mode iftype iface ifname device
interfaces=
config_cb() {
+ case "$1" in
+ interface)
+ config_set "$2" auto 1
+ ;;
+ esac
config_get iftype "$CONFIG_SECTION" TYPE
case "$iftype" in
interface)