There's no handling of WDS from AP-to-AP in OpenWRT's wireless config
file for madwifi (wds_add). This patch tries to fix this. Example:

# Router1 - Wireless MAC 00:11:11:11:11:01
config 'wifi-iface'
       option 'device' 'wifi0'
       option 'network' 'lan'
       option 'mode' 'ap'
       option 'wds'  '1'
       option 'ssid' 'guifi.net-test-radio0'
       option 'wds_add0' '00:11:11:11:11:02'
       option 'wds_add1' '00:11:11:11:11:03'

# Router2 - Wireless MAC 00:11:11:11:11:02
config 'wifi-iface'
       option 'device' 'wifi0'
       option 'network' 'lan'
       option 'mode' 'ap'
       option 'wds'  '1'
       option 'ssid' 'guifi.net-test-radio0'
       option 'wds_add0' '00:11:11:11:11:01'

# Router2 - Wireless MAC 00:11:11:11:11:03
config 'wifi-iface'
       option 'device' 'wifi0'
       option 'network' 'lan'
       option 'mode' 'ap'
       option 'wds'  '1'
       option 'ssid' 'guifi.net-test-radio0'
       option 'wds_add0' '00:11:11:11:11:01'

New WDS interfaces will be created for each radio:

Router1:
 ath0
 ath0.wds0    # WDS to Router2
 ath0.wds1    # WDS to Router3

Router2:
 ath0
 ath0.wds0    # WDS to Router1

Router3:
 ath0
 ath0.wds0    # WDS to Router1


Signed-off-by: Joan Llopart <joan.llopart at guifi dot net>
Index: package/madwifi/files/lib/wifi/madwifi.sh
===================================================================
--- package/madwifi/files/lib/wifi/madwifi.sh	(revision 13122)
+++ package/madwifi/files/lib/wifi/madwifi.sh	(working copy)
@@ -287,6 +287,19 @@
 		[ -n "$ssid" ] && iwconfig "$ifname" essid on
 		iwconfig "$ifname" essid "$ssid"
 		set_wifi_up "$vif" "$ifname"
+
+		cont=0
+		config_get "wds_add$cont" "$vif" "wds_add$cont"
+		eval wds_add=\$"wds_add$cont"
+		while [ $wds_add ]
+		do
+			iwpriv "$ifname" wds_add "$wds_add"
+			ifconfig "$ifname.wds$cont" up
+			cont=$((cont+1))
+			config_get "wds_add$cont" "$vif" "wds_add$cont"
+			eval wds_add=\$"wds_add$cont"
+		done
+
 		case "$mode" in
 			ap)
 				config_get_bool isolate "$vif" isolate 0

_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
http://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel

Reply via email to