Browse Source

hostapd: add support for custom per-BSS options

This adds an option "hostapd_bss_options" that does the same as
"hostapd_options" but on a per-BSS level, instead of a per-device level.

This can be used, for example, to configure different per-devce sae_passwords
per BSS or to augment some of the existing per-BSS options.

Signed-off-by: Florian Beverborg <[email protected]>
[remove whitespace errors, bump release]
Signed-off-by: Paul Spooren <[email protected]>
Florian Beverborg 5 years ago
parent
commit
22e568d0fe

+ 1 - 1
package/network/services/hostapd/Makefile

@@ -7,7 +7,7 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=hostapd
-PKG_RELEASE:=20
+PKG_RELEASE:=21
 
 PKG_SOURCE_URL:=http://w1.fi/hostap.git
 PKG_SOURCE_PROTO:=git

+ 7 - 0
package/network/services/hostapd/files/hostapd.sh

@@ -330,6 +330,8 @@ hostapd_common_add_bss_config() {
 
 	config_add_array airtime_sta_weight
 	config_add_int airtime_bss_weight airtime_bss_limit
+
+	config_add_array hostapd_bss_options
 }
 
 hostapd_set_vlan_file() {
@@ -940,6 +942,11 @@ hostapd_set_bss_options() {
 		json_for_each_item append_operator_icon operator_icon
 	fi
 
+	json_get_values opts hostapd_bss_options
+	for val in $opts; do
+		append bss_conf "$val" "$N"
+	done
+
 	bss_md5sum=$(echo $bss_conf | md5sum | cut -d" " -f1)
 	append bss_conf "config_id=$bss_md5sum" "$N"