git: 2f029bf911e2 - main - LinuxKPI: 802.11: extend ieee80211_key_seq and WLAN_KEY_LEN_* defines

From: Bjoern A. Zeeb <bz_at_FreeBSD.org>
Date: Sat, 03 Feb 2024 13:32:47 UTC
The branch main has been updated by bz:

URL: https://cgit.FreeBSD.org/src/commit/?id=2f029bf911e29dc46c32ea142daba4f26a2078f4

commit 2f029bf911e29dc46c32ea142daba4f26a2078f4
Author:     Bjoern A. Zeeb <bz@FreeBSD.org>
AuthorDate: 2024-01-29 14:21:17 +0000
Commit:     Bjoern A. Zeeb <bz@FreeBSD.org>
CommitDate: 2024-02-03 13:31:50 +0000

    LinuxKPI: 802.11: extend ieee80211_key_seq and WLAN_KEY_LEN_* defines
    
    For iwlwifi(4) d3.c we need another struct in struct ieee80211_key_seq
    and related WLAN_KEY_LEN_* defines in.
    
    MFC after:      3 days
    Reviewed by:    cc, emaste
    Differential Revision: https://reviews.freebsd.org/D43646
---
 sys/compat/linuxkpi/common/include/linux/ieee80211.h | 4 ++++
 sys/compat/linuxkpi/common/include/net/mac80211.h    | 3 +++
 2 files changed, 7 insertions(+)

diff --git a/sys/compat/linuxkpi/common/include/linux/ieee80211.h b/sys/compat/linuxkpi/common/include/linux/ieee80211.h
index 5c18bb9fe3d9..09487a318811 100644
--- a/sys/compat/linuxkpi/common/include/linux/ieee80211.h
+++ b/sys/compat/linuxkpi/common/include/linux/ieee80211.h
@@ -133,7 +133,11 @@ enum wlan_ht_cap_sm_ps {
 #define	WLAN_KEY_LEN_TKIP			32
 #define	WLAN_KEY_LEN_CCMP			16
 #define	WLAN_KEY_LEN_GCMP			16
+#define	WLAN_KEY_LEN_AES_CMAC			16
 #define	WLAN_KEY_LEN_GCMP_256			32
+#define	WLAN_KEY_LEN_BIP_CMAC_256		32
+#define	WLAN_KEY_LEN_BIP_GMAC_128		16
+#define	WLAN_KEY_LEN_BIP_GMAC_256		32
 
 /* 802.11-2020, 9.4.2.55.3, Table 9-185 Subfields of the A-MPDU Parameters field */
 enum ieee80211_min_mpdu_start_spacing {
diff --git a/sys/compat/linuxkpi/common/include/net/mac80211.h b/sys/compat/linuxkpi/common/include/net/mac80211.h
index 293b6868cd50..fc9d7829dae3 100644
--- a/sys/compat/linuxkpi/common/include/net/mac80211.h
+++ b/sys/compat/linuxkpi/common/include/net/mac80211.h
@@ -528,6 +528,9 @@ struct ieee80211_key_seq {
 		struct {
 			uint8_t		pn[IEEE80211_CCMP_PN_LEN];
 		} aes_cmac;
+		struct {
+			uint8_t		pn[IEEE80211_CCMP_PN_LEN];
+		} aes_gmac;
 		struct {
 			uint32_t	iv32;
 			uint16_t	iv16;