Add an UCI option to enable Multiple BSSID Advertisement. Enabling this
will announce all BSSIDS on a phy in a single beacon frame. The
interface that is brought up first will be the transmitting profile, all
others are non-transmitting profiles and will be advertised in the
Multiple BSSID element in Beacon and Probe Response frames of the first
interface.

This depends on driver and client support. Enabling this will result in
all but the first interface not being visible at all for clients that do
not support it.

Signed-off-by: Stijn Tintel <st...@linux-ipv6.be>
---
 package/network/services/hostapd/files/hostapd.sh | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/package/network/services/hostapd/files/hostapd.sh 
b/package/network/services/hostapd/files/hostapd.sh
index 28bd210623..bf3625c92d 100644
--- a/package/network/services/hostapd/files/hostapd.sh
+++ b/package/network/services/hostapd/files/hostapd.sh
@@ -121,6 +121,7 @@ hostapd_common_add_device_config() {
        config_add_array hostapd_options
 
        config_add_int airtime_mode
+       config_add_int mbssid
 
        hostapd_add_log_config
 }
@@ -133,7 +134,8 @@ hostapd_prepare_device_config() {
 
        json_get_vars country country3 country_ie beacon_int:100 doth 
require_mode legacy_rates \
                acs_chan_bias local_pwr_constraint spectrum_mgmt_required 
airtime_mode cell_density \
-               rts_threshold beacon_rate rssi_reject_assoc_rssi 
rssi_ignore_probe_request maxassoc
+               rts_threshold beacon_rate rssi_reject_assoc_rssi 
rssi_ignore_probe_request maxassoc \
+               mbssid:0
 
        hostapd_set_log_options base_cfg
 
@@ -234,6 +236,7 @@ hostapd_prepare_device_config() {
        [ -n "$rts_threshold" ] && append base_cfg 
"rts_threshold=$rts_threshold" "$N"
        [ "$airtime_mode" -gt 0 ] && append base_cfg 
"airtime_mode=$airtime_mode" "$N"
        [ -n "$maxassoc" ] && append base_cfg "iface_max_num_sta=$maxassoc" "$N"
+       [ "$mbssid" -gt 0 ] && [ "$mbssid" -le 2 ] && append base_cfg 
"mbssid=$mbssid" "$N"
 
        json_get_values opts hostapd_options
        for val in $opts; do
-- 
2.39.3


_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Reply via email to