#!/bin/sh /etc/rc.common
-# Copyright (C) 2006 OpenWrt.org
+# Copyright (C) 2006-2011 OpenWrt.org
START=40
STOP=90
include /lib/network
setup_switch
- [ -s /etc/config/wireless ] || \
- /sbin/wifi detect > /etc/config/wireless
- /sbin/wifi up
+
+ /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() {