From 919b58393b07f8144e97c0bb9fa07842087a1202 Mon Sep 17 00:00:00 2001
From: Filip Matusiak <filip.matusiak@iopsys.eu>
Date: Tue, 13 May 2025 17:22:10 +0200
Subject: [PATCH] Determine if client supports beacon reports based on its caps

---
 src/agent.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/agent.c b/src/agent.c
index bb29a3f4d..61c4ec28b 100644
--- a/src/agent.c
+++ b/src/agent.c
@@ -1287,8 +1287,12 @@ static int update_sta_entry(struct agent *a, struct netif_ap *ap, struct wifi_st
 			s->rx_fail_pkts = e->stats.rx_fail_pkts;
 			s->rtx_pkts = e->stats.tx_retry_pkts;
 
-
 			memcpy(s->bssid, e->bssid, 6);
+
+			if (!!(e->caps.valid & WIFI_CAP_RM_VALID)) {
+				s->supports_bcnreport =
+					wifi_cap_isset(e->cbitmap, WIFI_CAP_RM_NBR_REPORT) ? true : false;
+			}
 #ifdef UBUS_STA_INFO
 			wifiagent_log_stainfo(ap->agent, s);
 #endif
-- 
GitLab