From: Etan Kissling Date: Wed, 13 Jan 2021 08:52:02 +0000 (+0100) Subject: hostapd: add multicast_to_unicast and per_sta_vif X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=7babb978ad9d7fc29acb1ff86afb1eb343af303a;p=openwrt%2Fstaging%2Flinusw.git hostapd: add multicast_to_unicast and per_sta_vif This allows configuration of multicast_to_unicast and per_sta_vif options. - multicast_to_unicast requests multicast-to-unicast conversion. - per_sta_vif assigns each station its own AP_VLAN interface. Signed-off-by: Etan Kissling --- diff --git a/package/network/services/hostapd/Makefile b/package/network/services/hostapd/Makefile index f57b072974..a6d56d1433 100644 --- a/package/network/services/hostapd/Makefile +++ b/package/network/services/hostapd/Makefile @@ -7,7 +7,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=hostapd -PKG_RELEASE:=23 +PKG_RELEASE:=24 PKG_SOURCE_URL:=http://w1.fi/hostap.git PKG_SOURCE_PROTO:=git diff --git a/package/network/services/hostapd/files/hostapd.sh b/package/network/services/hostapd/files/hostapd.sh index 7d9ee5121e..cee9a8eaa2 100644 --- a/package/network/services/hostapd/files/hostapd.sh +++ b/package/network/services/hostapd/files/hostapd.sh @@ -331,6 +331,8 @@ hostapd_common_add_bss_config() { config_add_array airtime_sta_weight config_add_int airtime_bss_weight airtime_bss_limit + config_add_boolean multicast_to_unicast per_sta_vif + config_add_array hostapd_bss_options } @@ -480,7 +482,8 @@ hostapd_set_bss_options() { acct_server acct_secret acct_port acct_interval \ bss_load_update_period chan_util_avg_period sae_require_mfp \ multi_ap multi_ap_backhaul_ssid multi_ap_backhaul_key skip_inactivity_poll \ - airtime_bss_weight airtime_bss_limit airtime_sta_weight + airtime_bss_weight airtime_bss_limit airtime_sta_weight \ + multicast_to_unicast per_sta_vif set_default isolate 0 set_default maxassoc 0 @@ -942,6 +945,16 @@ hostapd_set_bss_options() { json_for_each_item append_operator_icon operator_icon fi + set_default multicast_to_unicast 0 + if [ "$multicast_to_unicast" -gt 0 ]; then + append bss_conf "multicast_to_unicast=$multicast_to_unicast" "$N" + fi + + set_default per_sta_vif 0 + if [ "$per_sta_vif" -gt 0 ]; then + append bss_conf "per_sta_vif=$per_sta_vif" "$N" + fi + json_get_values opts hostapd_bss_options for val in $opts; do append bss_conf "$val" "$N"