[PATCH v3 15/46] PR: Gate EDCA ranging support on ASAP capability
Kavita Kavita
kavita.kavita at oss.qualcomm.com
Wed May 13 02:59:39 PDT 2026
Parse NL80211_PMSR_FTM_CAPA_ATTR_ASAP from the driver and store
it in capa->asap_support. Gate both pr.edca_ista_support and
pr.edca_rsta_support on ASAP support since ASAP is mandatory for
EDCA-based ranging.
This ensures EDCA ranging requests are only sent when the driver
advertises ASAP support, preventing invalid ranging attempts.
Signed-off-by: Kavita Kavita <kavita.kavita at oss.qualcomm.com>
---
src/drivers/driver.h | 1 +
src/drivers/driver_nl80211_capa.c | 3 +++
wpa_supplicant/pr_supplicant.c | 4 ++--
3 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/src/drivers/driver.h b/src/drivers/driver.h
index a1f922f9a..18c51b75c 100644
--- a/src/drivers/driver.h
+++ b/src/drivers/driver.h
@@ -2699,6 +2699,7 @@ struct wpa_driver_capa {
u8 max_ftms_per_burst;
bool concurrent_ista_rsta;
bool support_6ghz;
+ bool asap_support;
u32 pd_preambles;
u32 pd_bandwidths;
diff --git a/src/drivers/driver_nl80211_capa.c b/src/drivers/driver_nl80211_capa.c
index 281f06d22..6051a0801 100644
--- a/src/drivers/driver_nl80211_capa.c
+++ b/src/drivers/driver_nl80211_capa.c
@@ -1251,6 +1251,9 @@ static void pmsr_type_ftm_handler(struct wpa_driver_nl80211_data *drv,
drv->capa.support_6ghz =
!!tb[NL80211_PMSR_FTM_CAPA_ATTR_6GHZ_SUPPORT];
+ drv->capa.asap_support =
+ !!tb[NL80211_PMSR_FTM_CAPA_ATTR_ASAP];
+
if (tb[NL80211_PMSR_FTM_CAPA_ATTR_PD_PREAMBLES])
drv->capa.pd_preambles =
nla_get_u32(tb[NL80211_PMSR_FTM_CAPA_ATTR_PD_PREAMBLES]);
diff --git a/wpa_supplicant/pr_supplicant.c b/wpa_supplicant/pr_supplicant.c
index f50712a96..9b3e09d82 100644
--- a/wpa_supplicant/pr_supplicant.c
+++ b/wpa_supplicant/pr_supplicant.c
@@ -355,8 +355,8 @@ int wpas_pr_init(struct wpa_global *global, struct wpa_supplicant *wpa_s,
pr.pasn_type = wpa_s->conf->pr_pasn_type;
pr.preferred_ranging_role = wpa_s->conf->pr_preferred_role;
- pr.edca_ista_support = capa->ista.support_edca;
- pr.edca_rsta_support = capa->rsta.support_edca;
+ pr.edca_ista_support = capa->ista.support_edca && capa->asap_support;
+ pr.edca_rsta_support = capa->rsta.support_edca && capa->asap_support;
pr.pd_format_bw_bitmap = capa->pd_bandwidths;
pr.pd_preamble_bitmap = capa->pd_preambles;
pr.edca_format_and_bw =
--
2.34.1
More information about the Hostap
mailing list