X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/38a2e4b392ba32048ba7da823a18150910792044..218bf045706c685fc7fd3542671886a4cbb8fa29:/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 eab00118a..9d4904ae4 100755 --- a/package/base-files/files/etc/init.d/network +++ b/package/base-files/files/etc/init.d/network @@ -2,24 +2,40 @@ # Copyright (C) 2006 OpenWrt.org START=40 -STOP=40 +STOP=90 boot() { setup_switch() { return 0; } include /lib/network setup_switch - [ -e /etc/config/wireless ] || \ + grep -qs config /etc/config/wireless && { + /sbin/wifi up + } || { + rm -f /etc/config/wireless /sbin/wifi detect > /etc/config/wireless - /sbin/wifi up -} + } -start() { - ifup -a - /sbin/wifi up + 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 } -restart() { +start() { + setup_switch() { return 0; } + + include /lib/network + setup_switch ifup -a /sbin/wifi up } @@ -27,3 +43,7 @@ restart() { stop() { ifdown -a } + +restart() { + start +}