diff options
author | David Bauer <mail@david-bauer.net> | 2022-03-31 18:06:02 +0200 |
---|---|---|
committer | David Bauer <mail@david-bauer.net> | 2022-04-27 11:37:39 +0200 |
commit | b4a9597154a6a335f8e7547f43080c8ecac0572a (patch) | |
tree | 9b33f96a83bb9b474b9b7fb7b8867e7fd9e517cf /package/network | |
parent | 5a18028c69e70e41c5dca622c910e5b9b876a2a3 (diff) | |
download | upstream-b4a9597154a6a335f8e7547f43080c8ecac0572a.tar.gz upstream-b4a9597154a6a335f8e7547f43080c8ecac0572a.tar.bz2 upstream-b4a9597154a6a335f8e7547f43080c8ecac0572a.zip |
hostapd: add support for enabling link measurements
Allow external processes to enable advertisement of link-measurement RRM
capability.
Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 2ca5c3da04c3f05a7477ae484768e03d4ca30711)
Diffstat (limited to 'package/network')
-rw-r--r-- | package/network/services/hostapd/src/src/ap/ubus.c | 10 |
1 files changed, 10 insertions, 0 deletions
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 @@ -928,6 +929,14 @@ __hostapd_bss_mgmt_enable_f(struct hostapd_data *hapd, int flag) 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; + + bss->radio_measurements[0] |= (u8) flags; + return true; #ifdef CONFIG_WNM_AP case BSS_MGMT_EN_BSS_TRANSITION: if (bss->bss_transition) @@ -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 |