X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/943fc97fb0340c01d8039bccbfc6c90ddcffc774..b7d3d9d3cef2286b7266dc447265a0a21565b9b9:/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 75103ec07..fc512216f 100755 --- a/package/base-files/files/etc/init.d/network +++ b/package/base-files/files/etc/init.d/network @@ -1,40 +1,40 @@ #!/bin/sh /etc/rc.common -# Copyright (C) 2006 OpenWrt.org +# Copyright (C) 2006-2011 OpenWrt.org START=40 -STOP=40 - -config_cb() { - local cfg_type="$1" - - case "$cfg_type" in - interface) - append networks "$2" "$N" - ;; - esac -} +STOP=90 boot() { - uci_load network setup_switch() { return 0; } include /lib/network setup_switch - [ -s /etc/config/wireless ] || \ - /sbin/wifi detect > /etc/config/wireless - /sbin/wifi up - for network in $networks; do - config_get startupcheck $network started - [ "$startupcheck" = "" ] && ifup $network + + /sbin/wifi detect > /tmp/wireless.tmp + [ -s /tmp/wireless.tmp ] && { + cat /tmp/wireless.tmp >> /etc/config/wireless + } + rm -f /tmp/wireless.tmp + grep -qs config /etc/config/wireless && { + /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 } start() { - ifup -a - /sbin/wifi up -} - -restart() { setup_switch() { return 0; } include /lib/network @@ -46,3 +46,7 @@ restart() { stop() { ifdown -a } + +restart() { + start +}