* [PATCH v2] wifi: brcmfmac: cfg80211: Report port_authorized for 4-way HS offload
@ 2026-09-15 19:17 Janne Grunau
2026-09-15 22:35 ` Neal Gompa
2026-10-04 9:45 ` Arend van Spriel
0 siblings, 2 replies; 3+ messages in thread
From: Janne Grunau @ 2026-09-15 19:17 UTC (permalink / raw)
To: Arend van Spriel, Hante Meuleman, Kalle Valo,
Pieter-Paul Giesberts
Cc: Jason Huang, linux-wireless, brcm80211, brcm80211-dev-list.pdl,
asahi, linux-kernel, Arend van Spriel, stable, Janne Grunau
Since commit 416386060 ("Mark authorization completed on driver
indication during 4-way HS offload") [0] wpa_supplicant expects
NL80211_CMD_PORT_AUTHORIZED to complete the authentication when the
driver supports 4-way handshake offload.
This was apparently never tested with the upstream brcmfmac driver as it
does not report this. This broke authentication on Apple silicon devices
(BRCM4378, BRMC4387, BRMC4388) and other devices when wpa_supplicant
2.11 was released [1]. This was initially dealt with by reverting the
commit in Fedora [2] and other Linux distributions.
Instead of carrying the revert over to wpa_supplicant 2.12 add the
expected NL80211_CMD_PORT_AUTHORIZED when the connection is established.
The "Fixes:" tag is not fully accurate as this has only became an issue
after userspace changes years after the change. Since the change is
expected to be required in all active stable branches for wpa_supplicant
2.11 / 2.12 compatibility it is helpful even though
BRCMF_PROFILE_FWSUP_SAE did not exists then.
Link: https://github.com/zephyrproject-rtos/hostap/commit/41638606054a09867fe3f9a2b5523aa4678cbfa5 [0]
Link: https://lists.infradead.org/pipermail/hostap/2024-August/042893.html [1]
Link: https://bugzilla.redhat.com/show_bug.cgi?id=2302577 [2]
Link: https://lore.kernel.org/linux-wireless/20260911065656.1269623-5-Jason.Huang2@infineon.com/ [3]
Cc: stable@vger.kernel.org
Fixes: b8a64f0e96c2 ("brcmfmac: support 4-way handshake offloading for WPA/WPA2-PSK")
Signed-off-by: Janne Grunau <j@jannau.net>
---
Changes in v2:
- rebased on wireless-next with "brcmfmac: add FT/OKC roaming offload
support" applied
- updated commit message
- Link to v1: https://lore.kernel.org/r/20260912-brcmfmac-4way-handshake-offload-authenticated-event-v1-1-e41a6a8281a2@jannau.net
---
.../wireless/broadcom/brcm80211/brcmfmac/cfg80211.c | 20 ++++++++++++++++----
1 file changed, 16 insertions(+), 4 deletions(-)
diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
index 9d8ce7bb046e..3e30d84835a2 100644
--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
@@ -6585,6 +6585,21 @@ brcmf_bss_roaming_done(struct brcmf_cfg80211_info *cfg,
return err;
}
+static bool
+brcmf_fwsup_is_authorized(struct brcmf_cfg80211_profile *profile,
+ struct cfg80211_connect_resp_params *conn_params)
+{
+ if ((profile->use_fwsup == BRCMF_PROFILE_FWSUP_1X ||
+ profile->use_fwsup == BRCMF_PROFILE_FWSUP_ROAM) &&
+ brcmf_has_pmkid(conn_params->req_ie, conn_params->req_ie_len))
+ return true;
+ if (profile->use_fwsup == BRCMF_PROFILE_FWSUP_SAE ||
+ profile->use_fwsup == BRCMF_PROFILE_FWSUP_PSK)
+ return true;
+
+ return false;
+}
+
static s32
brcmf_bss_connect_done(struct brcmf_cfg80211_info *cfg,
struct net_device *ndev, const struct brcmf_event_msg *e,
@@ -6622,10 +6637,7 @@ brcmf_bss_connect_done(struct brcmf_cfg80211_info *cfg,
conn_params.resp_ie = conn_info->resp_ie;
conn_params.resp_ie_len = conn_info->resp_ie_len;
authorized = completed &&
- (profile->use_fwsup == BRCMF_PROFILE_FWSUP_1X ||
- profile->use_fwsup == BRCMF_PROFILE_FWSUP_ROAM) &&
- brcmf_has_pmkid(conn_params.req_ie,
- conn_params.req_ie_len);
+ brcmf_fwsup_is_authorized(profile, &conn_params);
cfg80211_connect_done(ndev, &conn_params, GFP_KERNEL);
if (authorized)
cfg80211_port_authorized(ndev, profile->bssid, NULL, 0,
---
base-commit: 42aa76b3fd9278a8504dbfaf0a449993104d2a48
change-id: 20260912-brcmfmac-4way-handshake-offload-authenticated-event-853f58ae203e
Best regards,
--
Janne Grunau <j@jannau.net>
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH v2] wifi: brcmfmac: cfg80211: Report port_authorized for 4-way HS offload
2026-09-15 19:17 [PATCH v2] wifi: brcmfmac: cfg80211: Report port_authorized for 4-way HS offload Janne Grunau
@ 2026-09-15 22:35 ` Neal Gompa
2026-10-04 9:45 ` Arend van Spriel
1 sibling, 0 replies; 3+ messages in thread
From: Neal Gompa @ 2026-09-15 22:35 UTC (permalink / raw)
To: Janne Grunau
Cc: Arend van Spriel, Hante Meuleman, Kalle Valo,
Pieter-Paul Giesberts, Jason Huang, linux-wireless, brcm80211,
brcm80211-dev-list.pdl, asahi, linux-kernel, Arend van Spriel,
stable
On Tue, Sep 15, 2026 at 3:17 PM Janne Grunau <j@jannau.net> wrote:
>
> Since commit 416386060 ("Mark authorization completed on driver
> indication during 4-way HS offload") [0] wpa_supplicant expects
> NL80211_CMD_PORT_AUTHORIZED to complete the authentication when the
> driver supports 4-way handshake offload.
> This was apparently never tested with the upstream brcmfmac driver as it
> does not report this. This broke authentication on Apple silicon devices
> (BRCM4378, BRMC4387, BRMC4388) and other devices when wpa_supplicant
> 2.11 was released [1]. This was initially dealt with by reverting the
> commit in Fedora [2] and other Linux distributions.
> Instead of carrying the revert over to wpa_supplicant 2.12 add the
> expected NL80211_CMD_PORT_AUTHORIZED when the connection is established.
>
> The "Fixes:" tag is not fully accurate as this has only became an issue
> after userspace changes years after the change. Since the change is
> expected to be required in all active stable branches for wpa_supplicant
> 2.11 / 2.12 compatibility it is helpful even though
> BRCMF_PROFILE_FWSUP_SAE did not exists then.
>
> Link: https://github.com/zephyrproject-rtos/hostap/commit/41638606054a09867fe3f9a2b5523aa4678cbfa5 [0]
> Link: https://lists.infradead.org/pipermail/hostap/2024-August/042893.html [1]
> Link: https://bugzilla.redhat.com/show_bug.cgi?id=2302577 [2]
> Link: https://lore.kernel.org/linux-wireless/20260911065656.1269623-5-Jason.Huang2@infineon.com/ [3]
> Cc: stable@vger.kernel.org
> Fixes: b8a64f0e96c2 ("brcmfmac: support 4-way handshake offloading for WPA/WPA2-PSK")
> Signed-off-by: Janne Grunau <j@jannau.net>
> ---
> Changes in v2:
> - rebased on wireless-next with "brcmfmac: add FT/OKC roaming offload
> support" applied
> - updated commit message
> - Link to v1: https://lore.kernel.org/r/20260912-brcmfmac-4way-handshake-offload-authenticated-event-v1-1-e41a6a8281a2@jannau.net
> ---
> .../wireless/broadcom/brcm80211/brcmfmac/cfg80211.c | 20 ++++++++++++++++----
> 1 file changed, 16 insertions(+), 4 deletions(-)
>
Looks good to me.
Reviewed-by: Neal Gompa <neal@gompa.dev>
--
真実はいつも一つ!/ Always, there's only one truth!
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH v2] wifi: brcmfmac: cfg80211: Report port_authorized for 4-way HS offload
2026-09-15 19:17 [PATCH v2] wifi: brcmfmac: cfg80211: Report port_authorized for 4-way HS offload Janne Grunau
2026-09-15 22:35 ` Neal Gompa
@ 2026-10-04 9:45 ` Arend van Spriel
1 sibling, 0 replies; 3+ messages in thread
From: Arend van Spriel @ 2026-10-04 9:45 UTC (permalink / raw)
To: Janne Grunau
Cc: Hante Meuleman, Kalle Valo, Pieter-Paul Giesberts, Jason Huang,
linux-wireless, brcm80211, brcm80211-dev-list.pdl, asahi,
linux-kernel, stable, Arend van Spriel
On Tue, 15 Sep 2026 21:17:38 +0200, Janne Grunau wrote:
> Since commit 416386060 ("Mark authorization completed on driver
> indication during 4-way HS offload") [0] wpa_supplicant expects
> NL80211_CMD_PORT_AUTHORIZED to complete the authentication when the
> driver supports 4-way handshake offload.
[...]
> Cc: stable@vger.kernel.org
> Fixes: b8a64f0e96c2 ("brcmfmac: support 4-way handshake offloading for WPA/WPA2-PSK")
Acked-by: Arend van Spriel <arend.vanspriel@broadcom.com>
> Signed-off-by: Janne Grunau <j@jannau.net>
> Reviewed-by: Neal Gompa <neal@gompa.dev>
> ---
> .../wireless/broadcom/brcm80211/brcmfmac/cfg80211.c | 20 ++++++++++++++++----
> 1 file changed, 16 insertions(+), 4 deletions(-)
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2026-10-04 9:45 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-15 19:17 [PATCH v2] wifi: brcmfmac: cfg80211: Report port_authorized for 4-way HS offload Janne Grunau
2026-09-15 22:35 ` Neal Gompa
2026-10-04 9:45 ` Arend van Spriel
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox