[openwrt/openwrt] hostapd: add support for enabling link measurements

LEDE Commits lede-commits at lists.infradead.org
Wed Apr 27 02:38:21 PDT 2022


blocktrron pushed a commit to openwrt/openwrt.git, branch openwrt-21.02:
https://git.openwrt.org/b4a9597154a6a335f8e7547f43080c8ecac0572a

commit b4a9597154a6a335f8e7547f43080c8ecac0572a
Author: David Bauer <mail at david-bauer.net>
AuthorDate: Thu Mar 31 18:06:02 2022 +0200

    hostapd: add support for enabling link measurements
    
    Allow external processes to enable advertisement of link-measurement RRM
    capability.
    
    Signed-off-by: David Bauer <mail at david-bauer.net>
    (cherry picked from commit 2ca5c3da04c3f05a7477ae484768e03d4ca30711)
---
 package/network/services/hostapd/src/src/ap/ubus.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/package/network/services/hostapd/src/src/ap/ubus.c b/package/network/services/hostapd/src/src/ap/ubus.c
index 6edafa538d..e9764e0573 100644
--- a/package/network/services/hostapd/src/src/ap/ubus.c
+++ b/package/network/services/hostapd/src/src/ap/ubus.c
@@ -896,6 +896,7 @@ hostapd_rrm_print_nr(struct hostapd_neighbor_entry *nr)
 enum {
 	BSS_MGMT_EN_NEIGHBOR,
 	BSS_MGMT_EN_BEACON,
+	BSS_MGMT_EN_LINK_MEASUREMENT,
 #ifdef CONFIG_WNM_AP
 	BSS_MGMT_EN_BSS_TRANSITION,
 #endif
@@ -923,6 +924,14 @@ __hostapd_bss_mgmt_enable_f(struct hostapd_data *hapd, int flag)
 			WLAN_RRM_CAPS_BEACON_REPORT_ACTIVE |
 			WLAN_RRM_CAPS_BEACON_REPORT_TABLE;
 
+		if (bss->radio_measurements[0] & flags == flags)
+			return false;
+
+		bss->radio_measurements[0] |= (u8) flags;
+		return true;
+	case BSS_MGMT_EN_LINK_MEASUREMENT:
+		flags = WLAN_RRM_CAPS_LINK_MEASUREMENT;
+
 		if (bss->radio_measurements[0] & flags == flags)
 			return false;
 
@@ -960,6 +969,7 @@ __hostapd_bss_mgmt_enable(struct hostapd_data *hapd, uint32_t flags)
 static const struct blobmsg_policy bss_mgmt_enable_policy[__BSS_MGMT_EN_MAX] = {
 	[BSS_MGMT_EN_NEIGHBOR] = { "neighbor_report", BLOBMSG_TYPE_BOOL },
 	[BSS_MGMT_EN_BEACON] = { "beacon_report", BLOBMSG_TYPE_BOOL },
+	[BSS_MGMT_EN_LINK_MEASUREMENT] = { "link_measurement", BLOBMSG_TYPE_BOOL },
 #ifdef CONFIG_WNM_AP
 	[BSS_MGMT_EN_BSS_TRANSITION] = { "bss_transition", BLOBMSG_TYPE_BOOL },
 #endif




More information about the lede-commits mailing list