X-Git-Url: http://git.rohieb.name/openwrt.git/blobdiff_plain/6e3fb9dc77a21ac67d7ea90d0cf66a2dac84feff..f6d755eda4c0e0a068aa8de2504e16ab81a20bc0:/package/base-files/files/etc/init.d/network diff --git a/package/base-files/files/etc/init.d/network b/package/base-files/files/etc/init.d/network index 3587c24aa..c2095a4f5 100755 --- a/package/base-files/files/etc/init.d/network +++ b/package/base-files/files/etc/init.d/network @@ -1,5 +1,5 @@ #!/bin/sh /etc/rc.common -# Copyright (C) 2006 OpenWrt.org +# Copyright (C) 2006-2011 OpenWrt.org START=40 STOP=90 @@ -9,9 +9,26 @@ boot() { include /lib/network setup_switch - [ -s /etc/config/wireless ] || \ - /sbin/wifi detect > /etc/config/wireless - /sbin/wifi up + /sbin/wifi detect >> /etc/config/wireless + grep -qs config /etc/config/wireless && { + /sbin/wifi up + } || { + rm -f /etc/config/wireless + } + + scan_interfaces + + local ifc + for ifc in $interfaces; do + local proto + config_get proto "$ifc" proto + + local auto + config_get_bool auto "$ifc" auto 1 + + type "coldplug_interface_$proto" >/dev/null && [ "$auto" = 1 ] && \ + coldplug_interface_$proto "$ifc" + done } start() {