mirror of
https://github.com/Telecominfraproject/wlan-ap.git
synced 2025-12-21 19:31:55 +00:00
Some checks failed
Build OpenWrt/uCentral images / build (cig_wf186h) (push) Has been cancelled
Build OpenWrt/uCentral images / build (cig_wf186w) (push) Has been cancelled
Build OpenWrt/uCentral images / build (cig_wf188n) (push) Has been cancelled
Build OpenWrt/uCentral images / build (cig_wf189) (push) Has been cancelled
Build OpenWrt/uCentral images / build (cig_wf196) (push) Has been cancelled
Build OpenWrt/uCentral images / build (cybertan_eww631-a1) (push) Has been cancelled
Build OpenWrt/uCentral images / build (cybertan_eww631-b1) (push) Has been cancelled
Build OpenWrt/uCentral images / build (edgecore_eap101) (push) Has been cancelled
Build OpenWrt/uCentral images / build (edgecore_eap102) (push) Has been cancelled
Build OpenWrt/uCentral images / build (edgecore_eap104) (push) Has been cancelled
Build OpenWrt/uCentral images / build (edgecore_eap105) (push) Has been cancelled
Build OpenWrt/uCentral images / build (edgecore_eap111) (push) Has been cancelled
Build OpenWrt/uCentral images / build (edgecore_eap112) (push) Has been cancelled
Build OpenWrt/uCentral images / build (edgecore_oap101) (push) Has been cancelled
Build OpenWrt/uCentral images / build (edgecore_oap101-6e) (push) Has been cancelled
Build OpenWrt/uCentral images / build (edgecore_oap101e) (push) Has been cancelled
Build OpenWrt/uCentral images / build (edgecore_oap101e-6e) (push) Has been cancelled
Build OpenWrt/uCentral images / build (hfcl_ion4x) (push) Has been cancelled
Build OpenWrt/uCentral images / build (hfcl_ion4x_2) (push) Has been cancelled
Build OpenWrt/uCentral images / build (hfcl_ion4x_3) (push) Has been cancelled
Build OpenWrt/uCentral images / build (hfcl_ion4x_w) (push) Has been cancelled
Build OpenWrt/uCentral images / build (hfcl_ion4xe) (push) Has been cancelled
Build OpenWrt/uCentral images / build (hfcl_ion4xi) (push) Has been cancelled
Build OpenWrt/uCentral images / build (hfcl_ion4xi_w) (push) Has been cancelled
Build OpenWrt/uCentral images / build (indio_um-305ax) (push) Has been cancelled
Build OpenWrt/uCentral images / build (sercomm_ap72tip) (push) Has been cancelled
Build OpenWrt/uCentral images / build (sonicfi_rap630c-311g) (push) Has been cancelled
Build OpenWrt/uCentral images / build (sonicfi_rap630w-211g) (push) Has been cancelled
Build OpenWrt/uCentral images / build (sonicfi_rap630w-311g) (push) Has been cancelled
Build OpenWrt/uCentral images / build (udaya_a6-id2) (push) Has been cancelled
Build OpenWrt/uCentral images / build (udaya_a6-od2) (push) Has been cancelled
Build OpenWrt/uCentral images / build (wallys_dr5018) (push) Has been cancelled
Build OpenWrt/uCentral images / build (wallys_dr6018) (push) Has been cancelled
Build OpenWrt/uCentral images / build (wallys_dr6018-v4) (push) Has been cancelled
Build OpenWrt/uCentral images / build (yuncore_ax820) (push) Has been cancelled
Build OpenWrt/uCentral images / build (yuncore_ax840) (push) Has been cancelled
Build OpenWrt/uCentral images / build (yuncore_fap640) (push) Has been cancelled
Build OpenWrt/uCentral images / build (yuncore_fap650) (push) Has been cancelled
Build OpenWrt/uCentral images / build (yuncore_fap655) (push) Has been cancelled
Build OpenWrt/uCentral images / trigger-testing (push) Has been cancelled
Build OpenWrt/uCentral images / create-x64_vm-ami (push) Has been cancelled
Signed-off-by: John Crispin <john@phrozen.org>
82 lines
2.9 KiB
Diff
82 lines
2.9 KiB
Diff
From 9e4e5929284051e82f990bb3ffba80a8418001b5 Mon Sep 17 00:00:00 2001
|
|
From: Yuvarani V <quic_yuvarani@quicinc.com>
|
|
Date: Wed, 22 Nov 2023 14:46:38 +0530
|
|
Subject: [PATCH] hostapd: unsolicited broadcast Probe response during CCA.
|
|
|
|
During color change announcement, if the unsol_bcast_presp interval is set,
|
|
then generate and send unsolicited broadcast Probe Response Frame to
|
|
driver to update the probe response template.
|
|
|
|
Signed-off-by: Rathees Kumar R Chinannan <quic_rrchinan@quicinc.com>
|
|
Signed-off-by: Yuvarani V <quic_yuvarani@quicinc.com>
|
|
---
|
|
hostapd/ctrl_iface.c | 6 ++++++
|
|
src/ap/hostapd.c | 2 ++
|
|
src/drivers/driver.h | 2 ++
|
|
src/drivers/driver_nl80211.c | 5 +++++
|
|
4 files changed, 15 insertions(+)
|
|
|
|
--- a/hostapd/ctrl_iface.c
|
|
+++ b/hostapd/ctrl_iface.c
|
|
@@ -2805,6 +2805,8 @@ static int hostapd_ctrl_iface_color_chan
|
|
if (hostapd_fill_cca_settings(bss, &settings)) {
|
|
wpa_printf(MSG_DEBUG, "hostapd fill cca settings failed for color: %d\n", color);
|
|
hostapd_cleanup_cca_params(bss);
|
|
+ if (settings.ubpr.unsol_bcast_probe_resp_tmpl)
|
|
+ os_free(settings.ubpr.unsol_bcast_probe_resp_tmpl);
|
|
continue;
|
|
}
|
|
|
|
@@ -2812,6 +2814,8 @@ static int hostapd_ctrl_iface_color_chan
|
|
ret = hostapd_drv_switch_color(bss, &settings);
|
|
free_beacon_data(&settings.beacon_cca);
|
|
free_beacon_data(&settings.beacon_after);
|
|
+ if (settings.ubpr.unsol_bcast_probe_resp_tmpl)
|
|
+ os_free(settings.ubpr.unsol_bcast_probe_resp_tmpl);
|
|
|
|
if (ret)
|
|
hostapd_cleanup_cca_params(bss);
|
|
--- a/src/ap/hostapd.c
|
|
+++ b/src/ap/hostapd.c
|
|
@@ -4629,6 +4629,8 @@ int hostapd_fill_cca_settings(struct hos
|
|
free_beacon_data(&settings->beacon_after);
|
|
return ret;
|
|
}
|
|
+ settings->ubpr.unsol_bcast_probe_resp_tmpl =
|
|
+ hostapd_unsol_bcast_probe_resp(hapd, &settings->ubpr);
|
|
|
|
settings->counter_offset_beacon = hapd->cca_c_off_beacon;
|
|
settings->counter_offset_presp = hapd->cca_c_off_proberesp;
|
|
--- a/src/drivers/driver.h
|
|
+++ b/src/drivers/driver.h
|
|
@@ -2815,6 +2815,7 @@ struct csa_settings {
|
|
* @beacon_after: Next Beacon/Probe Response/(Re)Association Response frame info
|
|
* @counter_offset_beacon: Offset to the count field in Beacon frame tail
|
|
* @counter_offset_presp: Offset to the count field in Probe Response frame
|
|
+ * @ubpr: unsolicited Probe Response frame
|
|
*/
|
|
struct cca_settings {
|
|
u8 cca_count;
|
|
@@ -2825,6 +2826,7 @@ struct cca_settings {
|
|
|
|
u16 counter_offset_beacon;
|
|
u16 counter_offset_presp;
|
|
+ struct unsol_bcast_probe_resp ubpr;
|
|
|
|
/**
|
|
* link_id: If >=0 indicates the link of the AP MLD to configure
|
|
--- a/src/drivers/driver_nl80211.c
|
|
+++ b/src/drivers/driver_nl80211.c
|
|
@@ -11408,6 +11408,11 @@ static int nl80211_switch_color(void *pr
|
|
return -1;
|
|
}
|
|
}
|
|
+ if (settings->ubpr.unsol_bcast_probe_resp_interval &&
|
|
+ nl80211_unsol_bcast_probe_resp(bss, msg, &settings->ubpr) < 0) {
|
|
+ ret = -ENOBUFS;
|
|
+ goto error;
|
|
+ }
|
|
|
|
ret = send_and_recv_msgs(drv, msg, NULL, NULL, NULL, NULL);
|
|
if (ret) {
|