mirror of https://github.com/hak5/openwrt.git
mac80211: add support for wds_bridge hostapd feature
hostapd allows putting WDS (4addr mode) clients into a separate bridge other than the bridge regular (3addr mode) clients end up in. This is useful for example giving WDS clients access to several VLANs (trunking) while regular clients will end up inside a specific VLAN. Add 'wds_bridge' config parameter for wifi-iface which contains the name of the bridge. hostapd-mini already supports this feature, so all needed is to add the UCI wrapping in mac80211.sh. Signed-off-by: Daniel Golle <daniel@makrotopia.org>master
parent
947163b9d2
commit
3d6c571083
|
@ -62,6 +62,7 @@ drv_mac80211_init_iface_config() {
|
|||
config_add_string 'macaddr:macaddr' ifname
|
||||
|
||||
config_add_boolean wds powersave enable
|
||||
config_add_string wds_bridge
|
||||
config_add_int maxassoc
|
||||
config_add_int max_listen_int
|
||||
config_add_int dtim_period
|
||||
|
@ -340,12 +341,15 @@ mac80211_hostapd_setup_bss() {
|
|||
append hostapd_cfg "$type=$ifname" "$N"
|
||||
|
||||
hostapd_set_bss_options hostapd_cfg "$vif" || return 1
|
||||
json_get_vars wds dtim_period max_listen_int start_disabled
|
||||
json_get_vars wds wds_bridge dtim_period max_listen_int start_disabled
|
||||
|
||||
set_default wds 0
|
||||
set_default start_disabled 0
|
||||
|
||||
[ "$wds" -gt 0 ] && append hostapd_cfg "wds_sta=1" "$N"
|
||||
[ "$wds" -gt 0 ] && {
|
||||
append hostapd_cfg "wds_sta=1" "$N"
|
||||
[ -n "$wds_bridge" ] && append hostapd_cfg "wds_bridge=$wds_bridge" "$N"
|
||||
}
|
||||
[ "$staidx" -gt 0 -o "$start_disabled" -eq 1 ] && append hostapd_cfg "start_disabled=1" "$N"
|
||||
|
||||
cat >> /var/run/hostapd-$phy.conf <<EOF
|
||||
|
|
Loading…
Reference in New Issue