aboutsummaryrefslogtreecommitdiffstats
path: root/package/network/services/hostapd/patches/600-ubus_support.patch
diff options
context:
space:
mode:
authorNick Hainke <vincent@systemli.org>2019-12-06 18:17:06 +0100
committerDavid Bauer <mail@david-bauer.net>2020-03-30 01:46:50 +0200
commitc8ef465e10f46fd017cc9c3e455cc368a2b9da2b (patch)
tree2e68e366bf302103ace169156acb0bec2a29e5dc /package/network/services/hostapd/patches/600-ubus_support.patch
parent86440659b5694b82300854778ed3ac20f86c63f1 (diff)
downloadupstream-c8ef465e10f46fd017cc9c3e455cc368a2b9da2b.tar.gz
upstream-c8ef465e10f46fd017cc9c3e455cc368a2b9da2b.tar.bz2
upstream-c8ef465e10f46fd017cc9c3e455cc368a2b9da2b.zip
hostapd: expose beacon reports through ubus
Subscribe to beacon reports through ubus. Can be used for hearing map and client steering purposes. First enable rrm: ubus call hostapd.wlan0 bss_mgmt_enable '{"beacon_report":True}' Subscribe to the hostapd notifications via ubus. Request beacon report: ubus call hostapd.wlan0 rrm_beacon_req '{"addr":"00:xx:xx:xx:xx:xx", "op_class":0, "channel":1, "duration":1,"mode":2,"bssid":"ff:ff:ff:ff:ff:ff", "ssid":""}' Signed-off-by: Nick Hainke <vincent@systemli.org> [rework identation] Signed-off-by: David Bauer <mail@david-bauer.net>
Diffstat (limited to 'package/network/services/hostapd/patches/600-ubus_support.patch')
-rw-r--r--package/network/services/hostapd/patches/600-ubus_support.patch12
1 files changed, 12 insertions, 0 deletions
diff --git a/package/network/services/hostapd/patches/600-ubus_support.patch b/package/network/services/hostapd/patches/600-ubus_support.patch
index 6842c0e63e..b2860780eb 100644
--- a/package/network/services/hostapd/patches/600-ubus_support.patch
+++ b/package/network/services/hostapd/patches/600-ubus_support.patch
@@ -458,3 +458,15 @@
case 'o':
params.override_driver = optarg;
break;
+--- a/src/ap/rrm.c
++++ b/src/ap/rrm.c
+@@ -89,6 +89,9 @@ static void hostapd_handle_beacon_report
+ return;
+ wpa_msg(hapd->msg_ctx, MSG_INFO, BEACON_RESP_RX MACSTR " %u %02x %s",
+ MAC2STR(addr), token, rep_mode, report);
++ if (len < sizeof(struct rrm_measurement_beacon_report))
++ return;
++ hostapd_ubus_notify_beacon_report(hapd, addr, token, rep_mode, (struct rrm_measurement_beacon_report*) pos, len);
+ }
+
+