Просмотр исходного кода

add hotplug script for setting up networking on wds interfaces

SVN-Revision: 5125
Felix Fietkau 19 лет назад
Родитель
Сommit
05bbc05eaa
1 измененных файлов с 34 добавлено и 0 удалено
  1. 34 0
      package/broadcom-wl/files/etc/hotplug.d/net/20-broadcom_wds

+ 34 - 0
package/broadcom-wl/files/etc/hotplug.d/net/20-broadcom_wds

@@ -0,0 +1,34 @@
+include /lib/wifi
+
+setup_broadcom_wds() {
+	local iface="$1"
+	local remote="$(wlc ifname "$iface" wdsmac)"
+
+	[ -z "$remote" ] && return
+	
+	config_cb() {
+		[ -z "$CONFIG_SECTION" ] && return
+	
+		config_get type "$CONFIG_SECTION" TYPE
+		[ "$type" = "wifi-iface" ] || return
+		
+		config_get network "$CONFIG_SECTION" network
+		[ -z "$network" ] && return
+		
+		config_get addr "$CONFIG_SECTION" bssid
+		[ "$addr" = "$remote" ] && {
+			include /lib/network
+			scan_interfaces
+
+			setup_interface "$iface" "$network"
+		}
+	}
+
+	config_load wireless
+}
+
+case "$ACTION" in
+	add|register)
+		[ "${INTERFACE%%0.*}" = wds ] && setup_broadcom_wds "$INTERFACE"
+	;;
+esac