aboutsummaryrefslogtreecommitdiffstats
path: root/package/network/utils
diff options
context:
space:
mode:
Diffstat (limited to 'package/network/utils')
-rw-r--r--package/network/utils/iw/patches/001-nl80211_h_sync.patch101
1 files changed, 77 insertions, 24 deletions
diff --git a/package/network/utils/iw/patches/001-nl80211_h_sync.patch b/package/network/utils/iw/patches/001-nl80211_h_sync.patch
index 5c0993a7b7..884261621e 100644
--- a/package/network/utils/iw/patches/001-nl80211_h_sync.patch
+++ b/package/network/utils/iw/patches/001-nl80211_h_sync.patch
@@ -1,5 +1,3 @@
-diff --git a/nl80211.h b/nl80211.h
-index 31ae5c7..9fb7370 100644
--- a/nl80211.h
+++ b/nl80211.h
@@ -11,7 +11,7 @@
@@ -11,7 +9,23 @@ index 31ae5c7..9fb7370 100644
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
-@@ -1065,6 +1065,26 @@
+@@ -235,6 +235,15 @@
+ */
+
+ /**
++ * DOC: SAE authentication offload
++ *
++ * By setting @NL80211_EXT_FEATURE_SAE_OFFLOAD flag drivers can indicate they
++ * support offloading SAE authentication for WPA3-Personal networks. In
++ * %NL80211_CMD_CONNECT the password for SAE should be specified using
++ * %NL80211_ATTR_SAE_PASSWORD.
++ */
++
++/**
+ * enum nl80211_commands - supported nl80211 commands
+ *
+ * @NL80211_CMD_UNSPEC: unspecified command to catch errors
+@@ -1065,6 +1074,26 @@
* indicated by %NL80211_ATTR_WIPHY_FREQ and other attributes
* determining the width and type.
*
@@ -38,7 +52,7 @@ index 31ae5c7..9fb7370 100644
* @NL80211_CMD_MAX: highest used command number
* @__NL80211_CMD_AFTER_LAST: internal use
*/
-@@ -1285,6 +1305,10 @@ enum nl80211_commands {
+@@ -1285,6 +1314,10 @@ enum nl80211_commands {
NL80211_CMD_NOTIFY_RADAR,
@@ -49,7 +63,7 @@ index 31ae5c7..9fb7370 100644
/* add new commands above here */
/* used to define NL80211_CMD_MAX below */
-@@ -1565,6 +1589,12 @@ enum nl80211_commands {
+@@ -1565,6 +1598,12 @@ enum nl80211_commands {
* (a u32 with flags from &enum nl80211_wpa_versions).
* @NL80211_ATTR_AKM_SUITES: Used with CONNECT, ASSOCIATE, and NEW_BEACON to
* indicate which key management algorithm(s) to use (an array of u32).
@@ -62,7 +76,7 @@ index 31ae5c7..9fb7370 100644
*
* @NL80211_ATTR_REQ_IE: (Re)association request information elements as
* sent out by the card, for ROAM and successful CONNECT events.
-@@ -2260,10 +2290,10 @@ enum nl80211_commands {
+@@ -2260,10 +2299,10 @@ enum nl80211_commands {
* &enum nl80211_external_auth_action value). This is used with the
* %NL80211_CMD_EXTERNAL_AUTH request event.
* @NL80211_ATTR_EXTERNAL_AUTH_SUPPORT: Flag attribute indicating that the user
@@ -77,7 +91,7 @@ index 31ae5c7..9fb7370 100644
*
* @NL80211_ATTR_NSS: Station's New/updated RX_NSS value notified using this
* u8 attribute. This is used with %NL80211_CMD_STA_OPMODE_CHANGED.
-@@ -2299,6 +2329,21 @@ enum nl80211_commands {
+@@ -2299,6 +2338,27 @@ enum nl80211_commands {
* This is also used for capability advertisement in the wiphy information,
* with the appropriate sub-attributes.
*
@@ -93,13 +107,19 @@ index 31ae5c7..9fb7370 100644
+ * should be picking up the lowest tx power, either tx power per-interface
+ * or per-station.
+ *
++ * @NL80211_ATTR_SAE_PASSWORD: attribute for passing SAE password material. It
++ * is used with %NL80211_CMD_CONNECT to provide password for offloading
++ * SAE authentication for WPA3-Personal networks.
++ *
++ * @NL80211_ATTR_TWT_RESPONDER: Enable target wait time responder support.
++ *
+ * @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
-@@ -2748,6 +2793,12 @@ enum nl80211_attrs {
+@@ -2748,6 +2808,16 @@ enum nl80211_attrs {
NL80211_ATTR_PEER_MEASUREMENTS,
@@ -107,12 +127,16 @@ index 31ae5c7..9fb7370 100644
+ NL80211_ATTR_STA_TX_POWER_SETTING,
+ NL80211_ATTR_STA_TX_POWER,
+
++ NL80211_ATTR_SAE_PASSWORD,
++
++ NL80211_ATTR_TWT_RESPONDER,
++
+ NL80211_ATTR_WIPHY_ANTENNA_GAIN,
+
/* add attributes here, update the policy in nl80211.c */
__NL80211_ATTR_AFTER_LAST,
-@@ -2791,7 +2842,7 @@ enum nl80211_attrs {
+@@ -2791,14 +2861,14 @@ enum nl80211_attrs {
#define NL80211_MAX_SUPP_RATES 32
#define NL80211_MAX_SUPP_HT_RATES 77
@@ -121,7 +145,15 @@ index 31ae5c7..9fb7370 100644
#define NL80211_TKIP_DATA_OFFSET_ENCR_KEY 0
#define NL80211_TKIP_DATA_OFFSET_TX_MIC_KEY 16
#define NL80211_TKIP_DATA_OFFSET_RX_MIC_KEY 24
-@@ -3125,6 +3176,10 @@ enum nl80211_sta_bss_param {
+ #define NL80211_HT_CAPABILITY_LEN 26
+ #define NL80211_VHT_CAPABILITY_LEN 12
+ #define NL80211_HE_MIN_CAPABILITY_LEN 16
+-#define NL80211_HE_MAX_CAPABILITY_LEN 51
++#define NL80211_HE_MAX_CAPABILITY_LEN 54
+ #define NL80211_MAX_NR_CIPHER_SUITES 5
+ #define NL80211_MAX_NR_AKM_SUITES 2
+
+@@ -3125,6 +3195,10 @@ enum nl80211_sta_bss_param {
* might not be fully accurate.
* @NL80211_STA_INFO_CONNECTED_TO_GATE: set to true if STA has a path to a
* mesh gate (u8, 0 or 1)
@@ -132,7 +164,7 @@ index 31ae5c7..9fb7370 100644
* @__NL80211_STA_INFO_AFTER_LAST: internal
* @NL80211_STA_INFO_MAX: highest possible station info attribute
*/
-@@ -3168,6 +3223,9 @@ enum nl80211_sta_info {
+@@ -3168,6 +3242,9 @@ enum nl80211_sta_info {
NL80211_STA_INFO_RX_MPDUS,
NL80211_STA_INFO_FCS_ERROR_COUNT,
NL80211_STA_INFO_CONNECTED_TO_GATE,
@@ -142,7 +174,7 @@ index 31ae5c7..9fb7370 100644
/* keep last */
__NL80211_STA_INFO_AFTER_LAST,
-@@ -3277,8 +3335,10 @@ enum nl80211_mpath_flags {
+@@ -3277,8 +3354,10 @@ enum nl80211_mpath_flags {
* &enum nl80211_mpath_flags;
* @NL80211_MPATH_INFO_DISCOVERY_TIMEOUT: total path discovery timeout, in msec
* @NL80211_MPATH_INFO_DISCOVERY_RETRIES: mesh path discovery retries
@@ -154,7 +186,7 @@ index 31ae5c7..9fb7370 100644
* @__NL80211_MPATH_INFO_AFTER_LAST: internal use
*/
enum nl80211_mpath_info {
-@@ -3290,6 +3350,8 @@ enum nl80211_mpath_info {
+@@ -3290,6 +3369,8 @@ enum nl80211_mpath_info {
NL80211_MPATH_INFO_FLAGS,
NL80211_MPATH_INFO_DISCOVERY_TIMEOUT,
NL80211_MPATH_INFO_DISCOVERY_RETRIES,
@@ -163,7 +195,7 @@ index 31ae5c7..9fb7370 100644
/* keep last */
__NL80211_MPATH_INFO_AFTER_LAST,
-@@ -3618,6 +3680,14 @@ enum nl80211_reg_rule_attr {
+@@ -3618,6 +3699,14 @@ enum nl80211_reg_rule_attr {
* value as specified by &struct nl80211_bss_select_rssi_adjust.
* @NL80211_SCHED_SCAN_MATCH_ATTR_BSSID: BSSID to be used for matching
* (this cannot be used together with SSID).
@@ -178,7 +210,7 @@ index 31ae5c7..9fb7370 100644
* @NL80211_SCHED_SCAN_MATCH_ATTR_MAX: highest scheduled scan filter
* attribute number currently defined
* @__NL80211_SCHED_SCAN_MATCH_ATTR_AFTER_LAST: internal use
-@@ -3630,6 +3700,7 @@ enum nl80211_sched_scan_match_attr {
+@@ -3630,6 +3719,7 @@ enum nl80211_sched_scan_match_attr {
NL80211_SCHED_SCAN_MATCH_ATTR_RELATIVE_RSSI,
NL80211_SCHED_SCAN_MATCH_ATTR_RSSI_ADJUST,
NL80211_SCHED_SCAN_MATCH_ATTR_BSSID,
@@ -186,11 +218,10 @@ index 31ae5c7..9fb7370 100644
/* keep last */
__NL80211_SCHED_SCAN_MATCH_ATTR_AFTER_LAST,
-@@ -4114,6 +4185,27 @@ enum nl80211_channel_type {
- NL80211_CHAN_HT40PLUS
+@@ -4115,6 +4205,27 @@ enum nl80211_channel_type {
};
-+/**
+ /**
+ * enum nl80211_key_mode - Key mode
+ *
+ * @NL80211_KEY_RX_TX: (Default)
@@ -211,10 +242,19 @@ index 31ae5c7..9fb7370 100644
+ NL80211_KEY_SET_TX
+};
+
- /**
++/**
* enum nl80211_chan_width - channel width definitions
*
-@@ -4357,6 +4449,9 @@ enum nl80211_key_default_types {
+ * These values are used with the %NL80211_ATTR_CHANNEL_WIDTH
+@@ -4319,6 +4430,7 @@ enum nl80211_mfp {
+ enum nl80211_wpa_versions {
+ NL80211_WPA_VERSION_1 = 1 << 0,
+ NL80211_WPA_VERSION_2 = 1 << 1,
++ NL80211_WPA_VERSION_3 = 1 << 2,
+ };
+
+ /**
+@@ -4357,6 +4469,9 @@ enum nl80211_key_default_types {
* @NL80211_KEY_DEFAULT_TYPES: A nested attribute containing flags
* attributes, specifying what a key should be set as default as.
* See &enum nl80211_key_default_types.
@@ -224,7 +264,7 @@ index 31ae5c7..9fb7370 100644
* @__NL80211_KEY_AFTER_LAST: internal
* @NL80211_KEY_MAX: highest key attribute
*/
-@@ -4370,6 +4465,7 @@ enum nl80211_key_attributes {
+@@ -4370,6 +4485,7 @@ enum nl80211_key_attributes {
NL80211_KEY_DEFAULT_MGMT,
NL80211_KEY_TYPE,
NL80211_KEY_DEFAULT_TYPES,
@@ -232,7 +272,16 @@ index 31ae5c7..9fb7370 100644
/* keep last */
__NL80211_KEY_AFTER_LAST,
-@@ -5315,6 +5411,21 @@ enum nl80211_feature_flags {
+@@ -5223,7 +5339,7 @@ enum nl80211_feature_flags {
+ NL80211_FEATURE_TDLS_CHANNEL_SWITCH = 1 << 28,
+ NL80211_FEATURE_SCAN_RANDOM_MAC_ADDR = 1 << 29,
+ NL80211_FEATURE_SCHED_SCAN_RANDOM_MAC_ADDR = 1 << 30,
+- NL80211_FEATURE_ND_RANDOM_MAC_ADDR = 1 << 31,
++ NL80211_FEATURE_ND_RANDOM_MAC_ADDR = 1U << 31,
+ };
+
+ /**
+@@ -5315,6 +5431,24 @@ enum nl80211_feature_flags {
* able to rekey an in-use key correctly. Userspace must not rekey PTK keys
* if this flag is not set. Ignoring this can leak clear text packets and/or
* freeze the connection.
@@ -251,10 +300,13 @@ index 31ae5c7..9fb7370 100644
+ *
+ * @NL80211_EXT_FEATURE_STA_TX_PWR: This driver supports controlling tx power
+ * to a station.
++ *
++ * @NL80211_EXT_FEATURE_SAE_OFFLOAD: Device wants to do SAE authentication in
++ * station mode (SAE password is passed as part of the connect command).
*
* @NUM_NL80211_EXT_FEATURES: number of extended features.
* @MAX_NL80211_EXT_FEATURES: highest extended feature index.
-@@ -5355,6 +5466,11 @@ enum nl80211_ext_feature_index {
+@@ -5355,6 +5489,12 @@ enum nl80211_ext_feature_index {
NL80211_EXT_FEATURE_SCAN_MIN_PREQ_CONTENT,
NL80211_EXT_FEATURE_CAN_REPLACE_PTK0,
NL80211_EXT_FEATURE_ENABLE_FTM_RESPONDER,
@@ -263,10 +315,11 @@ index 31ae5c7..9fb7370 100644
+ NL80211_EXT_FEATURE_SCHED_SCAN_BAND_SPECIFIC_RSSI_THOLD,
+ NL80211_EXT_FEATURE_EXT_KEY_ID,
+ NL80211_EXT_FEATURE_STA_TX_PWR,
++ NL80211_EXT_FEATURE_SAE_OFFLOAD,
/* add new features before the definition below */
NUM_NL80211_EXT_FEATURES,
-@@ -5606,9 +5722,14 @@ enum nl80211_crit_proto_id {
+@@ -5606,9 +5746,14 @@ enum nl80211_crit_proto_id {
* Used by cfg80211_rx_mgmt()
*
* @NL80211_RXMGMT_FLAG_ANSWERED: frame was answered by device/driver.