Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
From: Alejandro Arrufat <15357691+AlexArrufat@users.noreply.github.com>
Subject: [PATCH] wpa_supplicant: preserve legacy PSK offload authorization

Rebase the existing Buildroot 2.11 compatibility revert onto 2.12.
The 2.12 update removes that revert, but upstream 2.12 still requires a
port-authorized event for PSK offload. Drivers such as brcmfmac need a
separate kernel fix before the revert can safely be removed.

Keep the old PSK compatibility behavior only. The OWE offload branch was
combined with PSK in 2.12; retain its authorization-event handling.

This preserves the behavior of the existing Buildroot 2.11 patch.
Kernel-side port-authorized reporting is the preferred long-term fix:
https://lore.kernel.org/r/20260912-brcmfmac-4way-handshake-offload-authenticated-event-v1-1-e41a6a8281a2@jannau.net

Upstream: Not applicable [compatibility with kernels lacking PSK port authorization events]
Signed-off-by: Alejandro Arrufat <15357691+AlexArrufat@users.noreply.github.com>

--- a/wpa_supplicant/events.c
+++ b/wpa_supplicant/events.c
@@ -4921,10 +4921,18 @@
wpa_supplicant_set_state(wpa_s, WPA_COMPLETED);
eapol_sm_notify_portValid(wpa_s->eapol, true);
eapol_sm_notify_eap_success(wpa_s->eapol, true);
- } else if (((wpa_s->drv_flags & WPA_DRIVER_FLAGS_4WAY_HANDSHAKE_PSK) &&
- wpa_key_mgmt_wpa_psk(wpa_s->key_mgmt)) ||
- ((wpa_s->drv_flags2 & WPA_DRIVER_FLAGS2_OWE_OFFLOAD_STA) &&
- wpa_s->key_mgmt == WPA_KEY_MGMT_OWE)) {
+ } else if ((wpa_s->drv_flags & WPA_DRIVER_FLAGS_4WAY_HANDSHAKE_PSK) &&
+ wpa_key_mgmt_wpa_psk(wpa_s->key_mgmt)) {
+ /* Preserve compatibility with drivers that complete the firmware
+ * handshake before reporting association, but do not send a
+ * separate port-authorized event.
+ */
+ wpa_supplicant_cancel_auth_timeout(wpa_s);
+ wpa_supplicant_set_state(wpa_s, WPA_COMPLETED);
+ eapol_sm_notify_portValid(wpa_s->eapol, true);
+ eapol_sm_notify_eap_success(wpa_s->eapol, true);
+ } else if ((wpa_s->drv_flags2 & WPA_DRIVER_FLAGS2_OWE_OFFLOAD_STA) &&
+ wpa_s->key_mgmt == WPA_KEY_MGMT_OWE) {
if (already_authorized) {
/*
* We are done; the driver will take care of RSN 4-way

This file was deleted.

4 changes: 2 additions & 2 deletions package/wpa_supplicant/wpa_supplicant.hash
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# Locally calculated
sha256 912ea06f74e30a8e36fbb68064d6cdff218d8d591db0fc5d75dee6c81ac7fc0a wpa_supplicant-2.11.tar.gz
sha256 f1b5992bbdd015c3ccb7faaadd62ef58ed821e15b9329bf2ceb27511ccc3f562 README
sha256 08e23937e16d0155e55cab2b51f51fbe10d80a1aa91c4e15442645059b737ef6 wpa_supplicant-2.12.tar.gz
sha256 83be1b142c59ccf0d6c5dde0695d8f84dfba109bea058e78ec2942389ccf327f README
2 changes: 1 addition & 1 deletion package/wpa_supplicant/wpa_supplicant.mk
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
#
################################################################################

WPA_SUPPLICANT_VERSION = 2.11
WPA_SUPPLICANT_VERSION = 2.12
WPA_SUPPLICANT_SITE = http://w1.fi/releases
WPA_SUPPLICANT_LICENSE = BSD-3-Clause
WPA_SUPPLICANT_LICENSE_FILES = README
Expand Down