[PATCH v2 1/2] wpa_supplicant: Derive ieee80211ac status from connection_vht

Chung-Hsien Hsu chung-hsien.hsu at infineon.com
Sun May 24 08:09:32 PDT 2026


The legacy ieee80211ac=1 STATUS indication is currently set based on
whether the Association Response frame includes a VHT Capabilities
element. That parses only one side of the association exchange and
duplicates information that is already derived by
wpas_parse_connection_info().

Use the parsed connection_vht state for the legacy ieee80211ac STATUS
indication. Keep this indication non-exclusive so that HE/EHT
associations on bands where VHT is part of the association can continue
to report ieee80211ac=1. The exclusive generation indication remains the
wifi_generation STATUS field.

Signed-off-by: Chung-Hsien Hsu <chung-hsien.hsu at infineon.com>
Signed-off-by: Yu-Chien Huang <roy.huang at infineon.com>
---
 wpa_supplicant/events.c | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/wpa_supplicant/events.c b/wpa_supplicant/events.c
index 0684ada719bd..11857b3e02f9 100644
--- a/wpa_supplicant/events.c
+++ b/wpa_supplicant/events.c
@@ -3533,6 +3533,7 @@ static void wpas_parse_connection_info(struct wpa_supplicant *wpa_s,
 	struct wpabuf *req_mlbuf, *resp_mlbuf;
 
 	wpa_s->connection_set = 0;
+	wpa_s->ieee80211ac = 0;
 
 	if (!req_ies || !resp_ies ||
 	    ieee802_11_parse_elems(req_ies, req_ies_len, &req_elems, 0) ==
@@ -3554,6 +3555,7 @@ static void wpas_parse_connection_info(struct wpa_supplicant *wpa_s,
 		resp_elems.he_capabilities;
 	wpa_s->connection_eht = req_elems.eht_capabilities &&
 		resp_elems.eht_capabilities;
+	wpa_s->ieee80211ac = wpa_s->connection_vht;
 	if (req_elems.rrm_enabled)
 		wpa_s->rrm.rrm_used = 1;
 
@@ -3750,11 +3752,6 @@ static int wpa_supplicant_event_associnfo(struct wpa_supplicant *wpa_s,
 #endif /* CONFIG_WNM */
 		interworking_process_assoc_resp(wpa_s, data->assoc_info.resp_ies,
 						data->assoc_info.resp_ies_len);
-		if ((wpa_s->hw_capab & BIT(CAPAB_VHT)) &&
-		    get_ie(data->assoc_info.resp_ies,
-			   data->assoc_info.resp_ies_len, WLAN_EID_VHT_CAP))
-			wpa_s->ieee80211ac = 1;
-
 		multi_ap_process_assoc_resp(wpa_s, data->assoc_info.resp_ies,
 					    data->assoc_info.resp_ies_len);
 	}
-- 
2.25.1




More information about the Hostap mailing list