From patchwork Tue Feb 20 13:18:07 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Benjamin Berg X-Patchwork-Id: 1901470 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=E8ul9VNU; dkim=fail reason="signature verification failed" (2048-bit key; secure) header.d=sipsolutions.net header.i=@sipsolutions.net header.a=rsa-sha256 header.s=mail header.b=nDpsq7lw; 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 4TfKkX00GGz23d2 for ; Wed, 21 Feb 2024 00:19:31 +1100 (AEDT) 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: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:In-Reply-To:References: List-Owner; bh=+9s7amPG/GiwJzf96hv+JT8EJBhNEiYwGrtJeqKSjVc=; b=E8ul9VNUPECaqB 7+ycFAsnodRq8K5vZ4sf0irIssL+Y9S1LJO1gFjno9I7ZDJ1v/VC704gDI1T33Hs/M+BZHi3Ua7+D 3K6hU9lOtgnB5yluPU3Pu/G59FgXGTmGuzZHEfwAAcPvQzFZmHnNQtPUWk9Dl2pKNquE7rEE5PSLr aFWv2qcGvsSyaNFFKrAVAT8Adwbs16lc0D9RkUjuQP6kO0Mpc+xFyRqwhfHl3WM76iY8OJfunAkKz v/AdSVPMYWxJ2U+M4zbOUGDuC2LGBXoTWQr7bV7I6an/RhCdU+GLaFWGYivF0CuukD7XZuLZH+QJf QzXeaWy92IKsDm8Yg81w==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1rcQ1j-0000000EpAf-1AJQ; Tue, 20 Feb 2024 13:19:15 +0000 Received: from s3.sipsolutions.net ([2a01:4f8:242:246e::2] helo=sipsolutions.net) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1rcQ1Y-0000000Ep04-3jUC for hostap@lists.infradead.org; Tue, 20 Feb 2024 13:19:07 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=sipsolutions.net; s=mail; h=Content-Transfer-Encoding:MIME-Version: Message-ID:Date:Subject:Cc:To:From:Content-Type:Sender:Reply-To:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-To:Resent-Cc: Resent-Message-ID:In-Reply-To:References; bh=sRqu3Eeqv9ZxzlHDpj3gYrh7HoDQqNJE6UfUX9SZRhs=; t=1708435141; x=1709644741; b=nDpsq7lwZg4Myk/zKxOmgacyN+H+VnLT6eHOaoMH3TUuUyc2ugigIt1RQ8R2MiaAFdCyoBaIDcI 4Sz5yCsfKOZYuIkXRwSrtu0apBDU3nXOSwWVXiixjgDqNRFpZ3iturGWby0t3ER89ZQYMm1ENlCfF jrd7O/o9fzuMFNnhdo6yjxTJftvoMkyLHiIxSqXJ6HHju5VWMddXp8eEqZ1LWf+hah8embEnfPT9e qe9LpHoAYY5CjlkvggUe9rmK1h5iyJY3s3yoxebVfcow38HNCoa5GsPMyYXiDjqdUXSLB6ZLn6Dpq U9obfIg8m4VWwsBwvCkZX+7WT/2MR2ELjBKA==; Received: by sipsolutions.net with esmtpsa (TLS1.3:ECDHE_X25519__RSA_PSS_RSAE_SHA256__AES_256_GCM:256) (Exim 4.97) (envelope-from ) id 1rcQ1R-00000000ugq-2GWh; Tue, 20 Feb 2024 14:18:57 +0100 From: benjamin@sipsolutions.net To: hostap@lists.infradead.org Cc: Benjamin Berg Subject: [PATCH v2 00/20] Various mostly WNM related fixes and cleanups Date: Tue, 20 Feb 2024 14:18:07 +0100 Message-ID: <20240220131827.17766-1-benjamin@sipsolutions.net> X-Mailer: git-send-email 2.43.2 MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240220_051905_278585_FFADAD48 X-CRM114-Status: GOOD ( 13.16 ) X-Spam-Score: -0.2 (/) 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: From: Benjamin Berg This is an updated series of the previous patchset. I have thrown in a few more general cleanup patches at the start, this is mostly to unify the code in order to use the valid_links pattern and addin [...] Content analysis details: (-0.2 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 SPF_PASS SPF: sender matches SPF record -0.0 SPF_HELO_PASS SPF: HELO matches SPF record -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain -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_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.0 T_SCC_BODY_TEXT_LINE No description available. 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 From: Benjamin Berg This is an updated series of the previous patchset. I have thrown in a few more general cleanup patches at the start, this is mostly to unify the code in order to use the valid_links pattern and adding a generic iteration macro. On the WNM side, I added more patches to cleanup the code and logic a bit more. I am planning to build on that to handle the ABRIDGED bit properly and unify the BSS selection code more. Avraham Stern (1): WNM: Wait for BTM response tx status before roaming Benjamin Berg (18): tests: Add missing scan cache flush nl80211: Fix link indexing in nl80211_connect_common common: Introduce for_each_link macro Use for_each_link in most cases Use for_each_link where possible nl80211: Use valid_links bitmask for bss->links array BSS: Switch struct wpa_bss to use valid_links bitmask WNM: Clean up old scan data processing WNM: Don't scan frequencies of neighbors that should be ignored WNM: Define a stub wnm_is_bss_excluded if WNM is disabled WNM: Drop check for current_ssid WNM: Drop explicit SSID check WNM: Drop explicit wpa_is_bss_tmp_disallowed check WNM: Do not store coloc_intf_elems WNM: Set wnm_reply to 0 when sending it WNM: Remove dialog_token parameter WNM: Follow BTM procedure if last link is dropped WNM: Keep BTM information until connection completes Ilan Peer (1): nl80211: Explicitly differentiate between 5GHz mode and 6GHz mode src/ap/hw_features.c | 8 +- src/ap/wpa_auth.c | 5 +- src/drivers/driver.h | 5 + src/drivers/driver_nl80211.c | 237 ++++++------------ src/drivers/driver_nl80211.h | 29 ++- src/drivers/driver_nl80211_capa.c | 11 +- src/drivers/driver_nl80211_event.c | 47 ++-- src/rsn_supp/tdls.c | 6 +- src/rsn_supp/wpa.c | 23 +- src/utils/common.h | 12 + tests/hwsim/test_ap_hs20.py | 1 + wpa_supplicant/bss.c | 38 ++- wpa_supplicant/bss.h | 5 +- wpa_supplicant/ctrl_iface.c | 12 +- wpa_supplicant/events.c | 40 ++- wpa_supplicant/rrm.c | 5 +- wpa_supplicant/scan.c | 5 +- wpa_supplicant/sme.c | 39 ++- wpa_supplicant/wnm_sta.c | 374 +++++++++++++---------------- wpa_supplicant/wnm_sta.h | 29 ++- wpa_supplicant/wpa_supplicant.c | 28 +-- wpa_supplicant/wpa_supplicant_i.h | 4 +- 22 files changed, 423 insertions(+), 540 deletions(-)