difos/package/network/utils/iw/patches/001-nl80211_h_sync.patch
Felix Fietkau 03ea0405a6 mac80211: backport MBSSID/EMA support patches
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2022-02-03 15:16:47 +01:00

137 lines
5.4 KiB
Diff

--- a/nl80211.h
+++ b/nl80211.h
@@ -301,29 +301,6 @@
*/
/**
- * DOC: FILS shared key crypto offload
- *
- * This feature is applicable to drivers running in AP mode.
- *
- * FILS shared key crypto offload can be advertised by drivers by setting
- * @NL80211_EXT_FEATURE_FILS_CRYPTO_OFFLOAD flag. The drivers that support
- * FILS shared key crypto offload should be able to encrypt and decrypt
- * association frames for FILS shared key authentication as per IEEE 802.11ai.
- * With this capability, for FILS key derivation, drivers depend on userspace.
- *
- * After FILS key derivation, userspace shares the FILS AAD details with the
- * driver and the driver stores the same to use in decryption of association
- * request and in encryption of association response. The below parameters
- * should be given to the driver in %NL80211_CMD_SET_FILS_AAD.
- * %NL80211_ATTR_MAC - STA MAC address, used for storing FILS AAD per STA
- * %NL80211_ATTR_FILS_KEK - Used for encryption or decryption
- * %NL80211_ATTR_FILS_NONCES - Used for encryption or decryption
- * (STA Nonce 16 bytes followed by AP Nonce 16 bytes)
- *
- * Once the association is done, the driver cleans the FILS AAD data.
- */
-
-/**
* enum nl80211_commands - supported nl80211 commands
*
* @NL80211_CMD_UNSPEC: unspecified command to catch errors
@@ -1226,12 +1203,6 @@
* @NL80211_CMD_COLOR_CHANGE_COMPLETED: Notify userland that the color change
* has completed
*
- * @NL80211_CMD_SET_FILS_AAD: Set FILS AAD data to the driver using -
- * &NL80211_ATTR_MAC - for STA MAC address
- * &NL80211_ATTR_FILS_KEK - for KEK
- * &NL80211_ATTR_FILS_NONCES - for FILS Nonces
- * (STA Nonce 16 bytes followed by AP Nonce 16 bytes)
- *
* @NL80211_CMD_MAX: highest used command number
* @__NL80211_CMD_AFTER_LAST: internal use
*/
@@ -1472,8 +1443,6 @@ enum nl80211_commands {
NL80211_CMD_COLOR_CHANGE_ABORTED,
NL80211_CMD_COLOR_CHANGE_COMPLETED,
- NL80211_CMD_SET_FILS_AAD,
-
/* add new commands above here */
/* used to define NL80211_CMD_MAX below */
@@ -2639,6 +2608,9 @@ enum nl80211_commands {
* Mandatory parameter for the transmitting interface to enable MBSSID.
* Optional for the non-transmitting interfaces.
*
+ * @NL80211_ATTR_WIPHY_ANTENNA_GAIN: Configured antenna gain. Used to reduce
+ * transmit power to stay within regulatory limits. u32, dBi.
+ *
* @NUM_NL80211_ATTR: total number of nl80211_attrs available
* @NL80211_ATTR_MAX: highest attribute number currently defined
* @__NL80211_ATTR_AFTER_LAST: internal use
@@ -3145,6 +3117,8 @@ enum nl80211_attrs {
NL80211_ATTR_MBSSID_CONFIG,
NL80211_ATTR_MBSSID_ELEMS,
+ NL80211_ATTR_WIPHY_ANTENNA_GAIN,
+
/* add attributes here, update the policy in nl80211.c */
__NL80211_ATTR_AFTER_LAST,
@@ -4978,7 +4952,6 @@ enum nl80211_txrate_gi {
* @NL80211_BAND_60GHZ: around 60 GHz band (58.32 - 69.12 GHz)
* @NL80211_BAND_6GHZ: around 6 GHz band (5.9 - 7.2 GHz)
* @NL80211_BAND_S1GHZ: around 900MHz, supported by S1G PHYs
- * @NL80211_BAND_LC: light communication band (placeholder)
* @NUM_NL80211_BANDS: number of bands, avoid using this in userspace
* since newer kernel versions may support more bands
*/
@@ -4988,7 +4961,6 @@ enum nl80211_band {
NL80211_BAND_60GHZ,
NL80211_BAND_6GHZ,
NL80211_BAND_S1GHZ,
- NL80211_BAND_LC,
NUM_NL80211_BANDS,
};
@@ -6046,11 +6018,6 @@ enum nl80211_feature_flags {
* @NL80211_EXT_FEATURE_BSS_COLOR: The driver supports BSS color collision
* detection and change announcemnts.
*
- * @NL80211_EXT_FEATURE_FILS_CRYPTO_OFFLOAD: Driver running in AP mode supports
- * FILS encryption and decryption for (Re)Association Request and Response
- * frames. Userspace has to share FILS AAD details to the driver by using
- * @NL80211_CMD_SET_FILS_AAD.
- *
* @NUM_NL80211_EXT_FEATURES: number of extended features.
* @MAX_NL80211_EXT_FEATURES: highest extended feature index.
*/
@@ -6116,7 +6083,6 @@ enum nl80211_ext_feature_index {
NL80211_EXT_FEATURE_SECURE_RTT,
NL80211_EXT_FEATURE_PROT_RANGE_NEGO_AND_MEASURE,
NL80211_EXT_FEATURE_BSS_COLOR,
- NL80211_EXT_FEATURE_FILS_CRYPTO_OFFLOAD,
/* add new features before the definition below */
NUM_NL80211_EXT_FEATURES,
@@ -7424,7 +7390,7 @@ enum nl80211_sar_specs_attrs {
* @NL80211_MBSSID_CONFIG_ATTR_MAX_EMA_PROFILE_PERIODICITY: Used by the kernel
* to advertise the maximum profile periodicity supported by the driver
* if EMA is enabled. Driver should indicate EMA support to the userspace
- * by setting wiphy->ema_max_profile_periodicity to
+ * by setting wiphy->mbssid_max_ema_profile_periodicity to
* a non-zero value.
*
* @NL80211_MBSSID_CONFIG_ATTR_INDEX: Mandatory parameter to pass the index of
@@ -7443,7 +7409,7 @@ enum nl80211_sar_specs_attrs {
*
* @NL80211_MBSSID_CONFIG_ATTR_EMA: Flag used to enable EMA AP feature.
* Setting this flag is permitted only if the driver advertises EMA support
- * by setting wiphy->ema_max_profile_periodicity to non-zero.
+ * by setting wiphy->mbssid_max_ema_profile_periodicity to non-zero.
*
* @__NL80211_MBSSID_CONFIG_ATTR_LAST: Internal
* @NL80211_MBSSID_CONFIG_ATTR_MAX: highest attribute
--- a/info.c
+++ b/info.c
@@ -701,7 +701,6 @@ broken_combination:
ext_feat_print(tb, OPERATING_CHANNEL_VALIDATION, "Operating Channel Validation (OCV) support");
ext_feat_print(tb, 4WAY_HANDSHAKE_AP_PSK, "AP mode PSK offload support");
ext_feat_print(tb, BSS_COLOR, "BSS coloring support");
- ext_feat_print(tb, FILS_CRYPTO_OFFLOAD, "FILS crypto offload");
}
if (tb_msg[NL80211_ATTR_COALESCE_RULE]) {