From patchwork Tue May 12 13:26:49 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chung-Hsien Hsu X-Patchwork-Id: 2236880 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (2048-bit key; secure) header.d=lists.infradead.org header.i=@lists.infradead.org header.a=rsa-sha256 header.s=bombadil.20210309 header.b=gH4SASdY; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=infineon.com header.i=@infineon.com header.a=rsa-sha256 header.s=IFXMAIL header.b=AylQJumT; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.infradead.org (client-ip=2607:7c80:54:3::133; helo=bombadil.infradead.org; envelope-from=hostap-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org; receiver=patchwork.ozlabs.org) Received: from bombadil.infradead.org (bombadil.infradead.org [IPv6:2607:7c80:54:3::133]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4gFHWd6K9lz1y5L for ; Tue, 12 May 2026 23:29:49 +1000 (AEST) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-ID:Date:Subject:CC:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=3/C1bkTG9HmIxXXbShdHUlDBnbHZmOp3T8M0QQM+9Us=; b=gH4SASdYGCRY7U NmVxF0qFwmamgXOkV8WsreHQCBhAimzw6bbn56fu2Bp8frG7SNKJgGXQDcMl79+n/vK8rsRtzOwmo zUQnHv8dCv4YDHDbeuoSzSVrRuR/YIO49zRu/Rr5CUhkMx/iObSYzBGuUphVTXeYcgzcf9tqYiCgL 37btvBNYPd3dmkwqhsCTHcn5GA/OMoGNPoePRaRKF4y5dhkJTVW8cw5cUquOnfEbDTKr3Fm2G85Qv pHcsdcL/s7yy6bziVPK6RqU43Itp+XuSuNu3PLQ26L97MKoHPpCHfZBBQqhM0FcKyrYjJOB2hkuOk wuErVIlFc6Zr9iKfyeKA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.99.1 #2 (Red Hat Linux)) id 1wMn9l-0000000Gqed-0qlj; Tue, 12 May 2026 13:28:17 +0000 Received: from smtp9.infineon.com ([217.10.52.204]) by bombadil.infradead.org with esmtps (Exim 4.99.1 #2 (Red Hat Linux)) id 1wMn9h-0000000GqdE-2pzq for hostap@lists.infradead.org; Tue, 12 May 2026 13:28:15 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=infineon.com; i=@infineon.com; q=dns/txt; s=IFXMAIL; t=1778592494; x=1810128494; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=XlJvU9CkvRbfkWtGPwYL7H5VXz2O1YilH2TwcGV0BV0=; b=AylQJumTL7KoC3h028vJXV2wyCxajok2alRTsZlhDVtyN8UNQKstAh/C F7vK9SuJ0VvjqWMFxSsEAgaGj10Eh+clKI2LcS8PSsAprscrIBdVAuJ+y vx/dai7PNFDOSMUc8DDdpp5lQR6luz3GmVEkjB8gNsH/hrhJXKwfvcyx1 4=; X-CSE-ConnectionGUID: ctRMouZ8SvOS64wPX7uelg== X-CSE-MsgGUID: P9yqGPHbR3OgKpdfjQ3mjw== X-IronPort-AV: E=McAfee;i="6800,10657,11783"; a="93097103" X-IronPort-AV: E=Sophos;i="6.23,231,1770591600"; d="scan'208";a="93097103" X-Amp-Result: SKIPPED(no attachment in message) Received: from unknown (HELO MUCSE812.infineon.com) ([172.23.29.38]) by smtp9.infineon.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 May 2026 15:27:12 +0200 Received: from MUCSE825.infineon.com (172.23.29.18) by MUCSE812.infineon.com (172.23.29.38) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.37; Tue, 12 May 2026 15:27:11 +0200 Received: from ISCN5CG4472QHC.infineon.com (10.161.6.196) by MUCSE825.infineon.com (172.23.29.18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.37; Tue, 12 May 2026 15:27:10 +0200 From: Chung-Hsien Hsu To: CC: Chung-Hsien Hsu , Yu-Chien Huang Subject: [PATCH 1/2] wpa_supplicant: Fix ieee80211ac status indication Date: Tue, 12 May 2026 21:26:49 +0800 Message-ID: <20260512132650.18420-2-chung-hsien.hsu@infineon.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20260512132650.18420-1-chung-hsien.hsu@infineon.com> References: <20260512132650.18420-1-chung-hsien.hsu@infineon.com> MIME-Version: 1.0 X-Originating-IP: [10.161.6.196] X-ClientProxiedBy: MUCSE810.infineon.com (172.23.29.36) To MUCSE825.infineon.com (172.23.29.18) X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.9.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20260512_062814_064983_524E5CA4 X-CRM114-Status: GOOD ( 13.24 ) X-Spam-Score: -4.4 (----) X-Spam-Report: Spam detection software, running on the system "bombadil.infradead.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: The legacy ieee80211ac=1 STATUS flag is currently set based only on the presence of a VHT Capabilities element in the Association Response. This can report ieee80211ac=1 for HE/EHT associations on non [...] Content analysis details: (-4.4 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -2.3 RCVD_IN_DNSWL_MED RBL: Sender listed at https://www.dnswl.org/, medium trust [217.10.52.204 listed in list.dnswl.org] 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.0 SPF_PASS SPF: sender matches SPF record 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] -0.0 DMARC_PASS DMARC pass policy X-BeenThere: hostap@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Hostap" Errors-To: hostap-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org The legacy ieee80211ac=1 STATUS flag is currently set based only on the presence of a VHT Capabilities element in the Association Response. This can report ieee80211ac=1 for HE/EHT associations on non-6 GHz bands where VHT capabilities are present as well. wpas_parse_connection_info() already derives the actual connection mode from both the Association Request and Response IEs and excludes the 2.4 GHz vendor VHT extension from connection_vht. Use that result for the legacy ieee80211ac STATUS flag instead of parsing the Association Response separately. This keeps ieee80211ac=1 limited to VHT/IEEE 802.11ac associations. Signed-off-by: Chung-Hsien Hsu Signed-off-by: Yu-Chien Huang --- wpa_supplicant/events.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/wpa_supplicant/events.c b/wpa_supplicant/events.c index 2a281e4c4b06..9afbd4617dd5 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,12 @@ 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; + + /* Keep the legacy ieee80211ac status indication limited to + * actual VHT/IEEE 802.11ac associations. */ + wpa_s->ieee80211ac = wpa_s->connection_vht && + !wpa_s->connection_he && !wpa_s->connection_eht; + if (req_elems.rrm_enabled) wpa_s->rrm.rrm_used = 1; @@ -3750,10 +3757,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); From patchwork Tue May 12 13:26:50 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chung-Hsien Hsu X-Patchwork-Id: 2236879 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (2048-bit key; secure) header.d=lists.infradead.org header.i=@lists.infradead.org header.a=rsa-sha256 header.s=bombadil.20210309 header.b=WK2bY7mx; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=infineon.com header.i=@infineon.com header.a=rsa-sha256 header.s=IFXMAIL header.b=CpmukElZ; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.infradead.org (client-ip=2607:7c80:54:3::133; helo=bombadil.infradead.org; envelope-from=hostap-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org; receiver=patchwork.ozlabs.org) Received: from bombadil.infradead.org (bombadil.infradead.org [IPv6:2607:7c80:54:3::133]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4gFHVY0f7Hz1y5L for ; Tue, 12 May 2026 23:28:53 +1000 (AEST) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-ID:Date:Subject:CC:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=ipCK4Rh4isTrkQwLzTiPPJtJhwLxfwnH6ep5ZAyYBVY=; b=WK2bY7mxfxQjRx 030O4hJ42eRa8JApUTEctRPu0br0QzR8RihNTgSXSEpaei1QzO9Pz9fa7/LBILA9SWDQ+BBgs7z8T 3WNDCXIJKW7hp3vHR2B7qOYiNfLn5Jzd+nMFiDZCymLi73MLSNmNMhQwcD8TrT2Eo0m9UhfsKPjhr FP3WlPT+nKRFd29/u2Yq/FEZC72M8NGOYjImZO+pBv5BVEQAMkUMl3uVg08R2Oq/2b73CgyAcNZcI RBYGdnuEgh4oQ9OeWGU7y6fmnRJSay4oTYyd9hggO6DndaE1lggWWA7qLhzsjfFWymfah2B7hBtQK TRurVxxksESJxWrZOPhQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.99.1 #2 (Red Hat Linux)) id 1wMn8p-0000000GqOL-3S8t; Tue, 12 May 2026 13:27:19 +0000 Received: from smtp2.infineon.com ([2a00:18f0:1e00:4::4]) by bombadil.infradead.org with esmtps (Exim 4.99.1 #2 (Red Hat Linux)) id 1wMn8m-0000000GqMQ-2Vhg for hostap@lists.infradead.org; Tue, 12 May 2026 13:27:18 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=infineon.com; i=@infineon.com; q=dns/txt; s=IFXMAIL; t=1778592436; x=1810128436; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=RIITS4wGg0YwSjG4gU8uCMb4eI5R2KAsc1tE5avSoCY=; b=CpmukElZ3hiGMIC8EzTCKQVxVEUqDezcnVfF0bjwmzeAWcBMoRfFAF60 M8EmAXknWoFILVYK+9FtrEL7y6zXt6z2lAs2MsQxhW99qFrQFHlZgHlRp QDppa1H+ojFFjxzldvmAqz/J9B0niduy+qrkP4BH53Cs7QfZ0eCpCMQxA M=; X-CSE-ConnectionGUID: gnzNdM63SlyBb/tHl5a5oA== X-CSE-MsgGUID: oNhh/qQFT46/R0JW31yApA== X-IronPort-AV: E=McAfee;i="6800,10657,11783"; a="157289492" X-IronPort-AV: E=Sophos;i="6.23,231,1770591600"; d="scan'208";a="157289492" X-Amp-Result: SKIPPED(no attachment in message) Received: from unknown (HELO MUCSE805.infineon.com) ([172.23.29.31]) by smtp2.infineon.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 May 2026 15:27:15 +0200 Received: from MUCSE825.infineon.com (172.23.29.18) by MUCSE805.infineon.com (172.23.29.31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.37; Tue, 12 May 2026 15:27:14 +0200 Received: from ISCN5CG4472QHC.infineon.com (10.161.6.196) by MUCSE825.infineon.com (172.23.29.18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.37; Tue, 12 May 2026 15:27:13 +0200 From: Chung-Hsien Hsu To: CC: Chung-Hsien Hsu , Adesh Kumar Singh Subject: [PATCH 2/2] wpa_supplicant: Add ieee80211ax status indication Date: Tue, 12 May 2026 21:26:50 +0800 Message-ID: <20260512132650.18420-3-chung-hsien.hsu@infineon.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20260512132650.18420-1-chung-hsien.hsu@infineon.com> References: <20260512132650.18420-1-chung-hsien.hsu@infineon.com> MIME-Version: 1.0 X-Originating-IP: [10.161.6.196] X-ClientProxiedBy: MUCSE810.infineon.com (172.23.29.36) To MUCSE825.infineon.com (172.23.29.18) X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.9.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20260512_062716_953941_0551FAB8 X-CRM114-Status: GOOD ( 14.95 ) X-Spam-Score: -2.1 (--) X-Spam-Report: Spam detection software, running on the system "bombadil.infradead.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: The STATUS output has a legacy ieee80211ac=1 indication for VHT associations, but there is no corresponding indication for HE/IEEE 802.11ax associations. Add ieee80211ax=1 to STATUS output based on the parsed connection_he state. Keep the indication limited to HE associations by excluding EHT associations so that an IEEE 802.11be connection is not repo [...] Content analysis details: (-2.1 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.0 SPF_PASS SPF: sender matches SPF record 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] -0.0 DMARC_PASS DMARC pass policy X-BeenThere: hostap@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Hostap" Errors-To: hostap-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org The STATUS output has a legacy ieee80211ac=1 indication for VHT associations, but there is no corresponding indication for HE/IEEE 802.11ax associations. Add ieee80211ax=1 to STATUS output based on the parsed connection_he state. Keep the indication limited to HE associations by excluding EHT associations so that an IEEE 802.11be connection is not reported as an IEEE 802.11ax connection. Signed-off-by: Chung-Hsien Hsu Signed-off-by: Adesh Kumar Singh --- wpa_supplicant/ctrl_iface.c | 9 +++++++++ wpa_supplicant/events.c | 10 ++++++++++ wpa_supplicant/wpa_supplicant_i.h | 3 +++ 3 files changed, 22 insertions(+) diff --git a/wpa_supplicant/ctrl_iface.c b/wpa_supplicant/ctrl_iface.c index 1096fa228d06..42c792b7fe39 100644 --- a/wpa_supplicant/ctrl_iface.c +++ b/wpa_supplicant/ctrl_iface.c @@ -2600,6 +2600,15 @@ static int wpa_supplicant_ctrl_iface_status(struct wpa_supplicant *wpa_s, } #endif /* CONFIG_WPS */ +#ifdef CONFIG_IEEE80211AX + if (wpa_s->ieee80211ax) { + ret = os_snprintf(pos, end - pos, "ieee80211ax=1\n"); + if (os_snprintf_error(end - pos, ret)) + return pos - buf; + pos += ret; + } +#endif /* CONFIG_IEEE80211AX */ + if (wpa_s->ieee80211ac) { ret = os_snprintf(pos, end - pos, "ieee80211ac=1\n"); if (os_snprintf_error(end - pos, ret)) diff --git a/wpa_supplicant/events.c b/wpa_supplicant/events.c index 9afbd4617dd5..40f682803c8e 100644 --- a/wpa_supplicant/events.c +++ b/wpa_supplicant/events.c @@ -439,6 +439,9 @@ void wpa_supplicant_mark_disassoc(struct wpa_supplicant *wpa_s) os_memset(wpa_s->last_tk, 0, sizeof(wpa_s->last_tk)); #endif /* CONFIG_TESTING_OPTIONS */ wpa_s->ieee80211ac = 0; +#ifdef CONFIG_IEEE80211AX + wpa_s->ieee80211ax = 0; +#endif /* CONFIG_IEEE80211AX */ if (wpa_s->enabled_4addr_mode && wpa_drv_set_4addr_mode(wpa_s, 0) == 0) wpa_s->enabled_4addr_mode = 0; @@ -3534,6 +3537,9 @@ static void wpas_parse_connection_info(struct wpa_supplicant *wpa_s, wpa_s->connection_set = 0; wpa_s->ieee80211ac = 0; +#ifdef CONFIG_IEEE80211AX + wpa_s->ieee80211ax = 0; +#endif /* CONFIG_IEEE80211AX */ if (!req_ies || !resp_ies || ieee802_11_parse_elems(req_ies, req_ies_len, &req_elems, 0) == @@ -3560,6 +3566,10 @@ static void wpas_parse_connection_info(struct wpa_supplicant *wpa_s, * actual VHT/IEEE 802.11ac associations. */ wpa_s->ieee80211ac = wpa_s->connection_vht && !wpa_s->connection_he && !wpa_s->connection_eht; +#ifdef CONFIG_IEEE80211AX + wpa_s->ieee80211ax = wpa_s->connection_he && + !wpa_s->connection_eht; +#endif /* CONFIG_IEEE80211AX */ if (req_elems.rrm_enabled) wpa_s->rrm.rrm_used = 1; diff --git a/wpa_supplicant/wpa_supplicant_i.h b/wpa_supplicant/wpa_supplicant_i.h index d68dd582fb75..23739aa17ce0 100644 --- a/wpa_supplicant/wpa_supplicant_i.h +++ b/wpa_supplicant/wpa_supplicant_i.h @@ -1634,6 +1634,9 @@ struct wpa_supplicant { #ifdef CONFIG_FILS unsigned int disable_fils:1; #endif /* CONFIG_FILS */ +#ifdef CONFIG_IEEE80211AX + unsigned int ieee80211ax:1; +#endif /* CONFIG_IEEE80211AX */ unsigned int ieee80211ac:1; unsigned int enabled_4addr_mode:1; unsigned int multi_bss_support:1;