summaryrefslogtreecommitdiff
path: root/package/netifd
diff options
context:
space:
mode:
authorjow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>2012-09-15 12:50:55 +0000
committerjow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>2012-09-15 12:50:55 +0000
commit3619dbb11736b6a674a47964ac68ff037cb5ba15 (patch)
tree6bd05c5f3af8b1279162ac35cd63fe95b387a5f2 /package/netifd
parent9a7bc8a8b51d0d7328e8c1a1fa1d3f6cbaf63f9a (diff)
[package] netifd: prevent error in ifup if no /etc/config/wireless exists, properly handle wifi-iface sections which are part of multiple networks
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33425 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/netifd')
-rwxr-xr-xpackage/netifd/files/sbin/ifup10
1 files changed, 7 insertions, 3 deletions
diff --git a/package/netifd/files/sbin/ifup b/package/netifd/files/sbin/ifup
index 0d2a3ca107..e6dbb35417 100755
--- a/package/netifd/files/sbin/ifup
+++ b/package/netifd/files/sbin/ifup
@@ -50,7 +50,7 @@ else
if_call "network.interface.$1"
fi
-if [ -n "$setup_wifi" ] && grep -q config /etc/config/wireless; then
+if [ -n "$setup_wifi" ] && grep -sq config /etc/config/wireless; then
. /lib/functions.sh
find_related_radios() {
@@ -58,8 +58,12 @@ if [ -n "$setup_wifi" ] && grep -q config /etc/config/wireless; then
config_get wdev "$1" device
config_get wnet "$1" network
- if [ -n "$wdev" ] && [ "$wnet" = "$network" ]; then
- append radio_devs "$wdev" "$N"
+ if [ -n "$wdev" ]; then
+ for wnet in $wnet; do
+ if [ "$wnet" = "$network" ]; then
+ append radio_devs "$wdev" "$N"
+ fi
+ done
fi
}