Re: [PATCH 1/2] wiphy: add driver quirk to disable SAE
KeithG <[email protected]>
| Newsgroups | dev.linux.lists.iwd |
|---|---|
| Message-ID | <CAG17S_NoY9QYnDEjTBCxfCzOdPY-qibxGdYGPMvhU3DQXBHyvQ@mail.gmail.com> |
On Tue, Feb 11, 2025 at 1:59 PM James Prestwood <[email protected]> wrote: > > SAE/WPA3 is completely broken on brcmfmac, at least without a custom > kernel patch which isn't included in many OS distributions. In order > to help with this add a driver quirk so devices with brcmfmac can > utilize WPA2 instead of WPA3 and at least connect to networks at > this capacity until the fix is more widely distributed. > --- > src/wiphy.c | 10 +++++++++- > 1 file changed, 9 insertions(+), 1 deletion(-) > > diff --git a/src/wiphy.c b/src/wiphy.c > index c7df648a..46f7a6d9 100644 > --- a/src/wiphy.c > +++ b/src/wiphy.c > @@ -74,6 +74,7 @@ enum driver_flag { > POWER_SAVE_DISABLE = 0x4, > OWE_DISABLE = 0x8, > MULTICAST_RX_DISABLE = 0x10, > + SAE_DISABLE = 0x20, > }; > > struct driver_flag_name { > @@ -106,7 +107,8 @@ static const struct driver_flag_name driver_flag_names[] = { > { "ForcePae", FORCE_PAE }, > { "PowerSaveDisable", POWER_SAVE_DISABLE }, > { "OweDisable", OWE_DISABLE }, > - { "MulticastRxDisable", MULTICAST_RX_DISABLE } > + { "MulticastRxDisable", MULTICAST_RX_DISABLE }, > + { "SaeDisable", SAE_DISABLE }, > }; > > struct wiphy { > @@ -202,6 +204,9 @@ uint16_t wiphy_get_supported_ciphers(struct wiphy *wiphy, uint16_t mask) > > static bool wiphy_can_connect_sae(struct wiphy *wiphy) > { > + if (wiphy->driver_flags & SAE_DISABLE) > + return false; > + > /* > * WPA3 Specification version 3, Section 2.2: > * A STA shall not enable WEP and TKIP > @@ -1368,6 +1373,9 @@ static void wiphy_print_basic_info(struct wiphy *wiphy) > if (wiphy->driver_flags & MULTICAST_RX_DISABLE) > flags = l_strv_append(flags, "MulticastRxDisable"); > > + if (wiphy->driver_flags & SAE_DISABLE) > + flags = l_strv_append(flags, "SaeDisable"); > + > joined = l_strjoinv(flags, ' '); > > l_info("\tDriver Flags: %s", joined); > -- > 2.34.1 > > James, What should I do with this patch? Should I apply it? (I do not think I should). I am trying to get the kernel patch in the 6.6 kernel. They, RPiOS, just pushed a new kernel 6.6.74 and the one line patch is not yet in there. I guess I do not really understand what you are proposing. The default RPI kernel, with the patched version of IWD 3.3 (with the'[RFC] netdev: avoid PMKSA for fullmac drivers') patch will connect properly with wpa2 SSIDs when used with the un-patched kernel. The patched kernel will also connect to WPA2 SSIDs with the bonus of connecting to WPA3 as well. Curious, Keith