Kaynağa Gözat

netifd: prevent error in ifup if no /etc/config/wireless exists, properly handle wifi-iface sections which are part of multiple networks

SVN-Revision: 33425
Jo-Philipp Wich 13 yıl önce
ebeveyn
işleme
f1eda43e73
1 değiştirilmiş dosya ile 7 ekleme ve 3 silme
  1. 7 3
      package/netifd/files/sbin/ifup

+ 7 - 3
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
 	}