On 7/27/2023 11:18 PM, David Lin wrote:
1. For station mode first.
2. This feature is a must for WPA3.
3. The code is tested with IW416. There is no guarantee for other chips.
Signed-off-by: David Lin <yu-hao.lin@xxxxxxx>
---
.../net/wireless/marvell/mwifiex/cfg80211.c | 327 +++++++++++++++++-
drivers/net/wireless/marvell/mwifiex/cmdevt.c | 2 +-
drivers/net/wireless/marvell/mwifiex/decl.h | 12 +
drivers/net/wireless/marvell/mwifiex/fw.h | 15 +
drivers/net/wireless/marvell/mwifiex/init.c | 3 +
drivers/net/wireless/marvell/mwifiex/join.c | 65 +++-
drivers/net/wireless/marvell/mwifiex/main.c | 4 +
drivers/net/wireless/marvell/mwifiex/main.h | 10 +
drivers/net/wireless/marvell/mwifiex/scan.c | 6 +
.../net/wireless/marvell/mwifiex/sta_event.c | 17 +-
.../net/wireless/marvell/mwifiex/sta_ioctl.c | 1 +
drivers/net/wireless/marvell/mwifiex/sta_tx.c | 10 +-
.../net/wireless/marvell/mwifiex/uap_cmd.c | 25 ++
drivers/net/wireless/marvell/mwifiex/util.c | 74 ++++
14 files changed, 558 insertions(+), 13 deletions(-)
I just did a quick scan to see if anything jumped out at me
...
diff --git a/drivers/net/wireless/marvell/mwifiex/fw.h b/drivers/net/wireless/marvell/mwifiex/fw.h
index f2168fac95ed..e2827e25ec38 100644
--- a/drivers/net/wireless/marvell/mwifiex/fw.h
+++ b/drivers/net/wireless/marvell/mwifiex/fw.h
..
+#define MWIFIEX_AUTHTYPE_SAE 6
+
+struct mwifiex_ie_types_sae_pwe_mode {
+ struct mwifiex_ie_types_header header;
+ u8 pwe[1];
this jumped out, it is not allowed (unless this really is a 1-element array)
see
<https://www.kernel.org/doc/html/next/process/deprecated.html#zero-length-and-one-element-arrays>
should just be u8 pwe[];
make sure any code that uses sizeof(struct
mwifiex_ie_types_sae_pwe_mode) accounts for the u8 being removed from
the struct
+} __packed;