aboutsummaryrefslogtreecommitdiffstats
path: root/include/uapi/linux
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2017-10-11 13:15:01 -0400
committerDavid S. Miller <davem@davemloft.net>2017-10-11 13:15:01 -0400
commitdf2fd38a08272fcc2c658f2c4d7d6318e8da593e (patch)
tree0573548f36917a3af84d571cac557da6f5eab032 /include/uapi/linux
parentb8226962b1c49c784aeddb9d2fafbf53dfdc2190 (diff)
parent90a53e4432b12288316efaa5f308adafb8d304b0 (diff)
Merge tag 'mac80211-next-for-davem-2017-10-11' of git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next
Johannes Berg says: ==================== Work continues in various areas: * port authorized event for 4-way-HS offload (Avi) * enable MFP optional for such devices (Emmanuel) * Kees's timer setup patch for mac80211 mesh (the part that isn't trivially scripted) * improve VLAN vs. TXQ handling (myself) * load regulatory database as firmware file (myself) * with various other small improvements and cleanups I merged net-next once in the meantime to allow Kees's timer setup patch to go in. ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/uapi/linux')
-rw-r--r--include/uapi/linux/nl80211.h82
1 files changed, 65 insertions, 17 deletions
diff --git a/include/uapi/linux/nl80211.h b/include/uapi/linux/nl80211.h
index 51626b4175c0..f882fe1f9709 100644
--- a/include/uapi/linux/nl80211.h
+++ b/include/uapi/linux/nl80211.h
@@ -569,13 +569,14 @@
569 * authentication/association or not receiving a response from the AP. 569 * authentication/association or not receiving a response from the AP.
570 * Non-zero %NL80211_ATTR_STATUS_CODE value is indicated in that case as 570 * Non-zero %NL80211_ATTR_STATUS_CODE value is indicated in that case as
571 * well to remain backwards compatible. 571 * well to remain backwards compatible.
572 * @NL80211_CMD_ROAM: notifcation indicating the card/driver roamed by itself. 572 * When establishing a security association, drivers that support 4 way
573 * When the driver roamed in a network that requires 802.1X authentication, 573 * handshake offload should send %NL80211_CMD_PORT_AUTHORIZED event when
574 * %NL80211_ATTR_PORT_AUTHORIZED should be set if the 802.1X authentication 574 * the 4 way handshake is completed successfully.
575 * was done by the driver or if roaming was done using Fast Transition 575 * @NL80211_CMD_ROAM: Notification indicating the card/driver roamed by itself.
576 * protocol (in which case 802.1X authentication is not needed). If 576 * When a security association was established with the new AP (e.g. if
577 * %NL80211_ATTR_PORT_AUTHORIZED is not set, user space is responsible for 577 * the FT protocol was used for roaming or the driver completed the 4 way
578 * the 802.1X authentication. 578 * handshake), this event should be followed by an
579 * %NL80211_CMD_PORT_AUTHORIZED event.
579 * @NL80211_CMD_DISCONNECT: drop a given connection; also used to notify 580 * @NL80211_CMD_DISCONNECT: drop a given connection; also used to notify
580 * userspace that a connection was dropped by the AP or due to other 581 * userspace that a connection was dropped by the AP or due to other
581 * reasons, for this the %NL80211_ATTR_DISCONNECTED_BY_AP and 582 * reasons, for this the %NL80211_ATTR_DISCONNECTED_BY_AP and
@@ -982,6 +983,14 @@
982 * @NL80211_CMD_DEL_PMK: For offloaded 4-Way handshake, delete the previously 983 * @NL80211_CMD_DEL_PMK: For offloaded 4-Way handshake, delete the previously
983 * configured PMK for the authenticator address identified by 984 * configured PMK for the authenticator address identified by
984 * &NL80211_ATTR_MAC. 985 * &NL80211_ATTR_MAC.
986 * @NL80211_CMD_PORT_AUTHORIZED: An event that indicates that the 4 way
987 * handshake was completed successfully by the driver. The BSSID is
988 * specified with &NL80211_ATTR_MAC. Drivers that support 4 way handshake
989 * offload should send this event after indicating 802.11 association with
990 * &NL80211_CMD_CONNECT or &NL80211_CMD_ROAM. If the 4 way handshake failed
991 * &NL80211_CMD_DISCONNECT should be indicated instead.
992 *
993 * @NL80211_CMD_RELOAD_REGDB: Request that the regdb firmware file is reloaded.
985 * 994 *
986 * @NL80211_CMD_MAX: highest used command number 995 * @NL80211_CMD_MAX: highest used command number
987 * @__NL80211_CMD_AFTER_LAST: internal use 996 * @__NL80211_CMD_AFTER_LAST: internal use
@@ -1185,6 +1194,10 @@ enum nl80211_commands {
1185 NL80211_CMD_SET_PMK, 1194 NL80211_CMD_SET_PMK,
1186 NL80211_CMD_DEL_PMK, 1195 NL80211_CMD_DEL_PMK,
1187 1196
1197 NL80211_CMD_PORT_AUTHORIZED,
1198
1199 NL80211_CMD_RELOAD_REGDB,
1200
1188 /* add new commands above here */ 1201 /* add new commands above here */
1189 1202
1190 /* used to define NL80211_CMD_MAX below */ 1203 /* used to define NL80211_CMD_MAX below */
@@ -1407,8 +1420,12 @@ enum nl80211_commands {
1407 * 1420 *
1408 * @NL80211_ATTR_USE_MFP: Whether management frame protection (IEEE 802.11w) is 1421 * @NL80211_ATTR_USE_MFP: Whether management frame protection (IEEE 802.11w) is
1409 * used for the association (&enum nl80211_mfp, represented as a u32); 1422 * used for the association (&enum nl80211_mfp, represented as a u32);
1410 * this attribute can be used 1423 * this attribute can be used with %NL80211_CMD_ASSOCIATE and
1411 * with %NL80211_CMD_ASSOCIATE and %NL80211_CMD_CONNECT requests 1424 * %NL80211_CMD_CONNECT requests. %NL80211_MFP_OPTIONAL is not allowed for
1425 * %NL80211_CMD_ASSOCIATE since user space SME is expected and hence, it
1426 * must have decided whether to use management frame protection or not.
1427 * Setting %NL80211_MFP_OPTIONAL with a %NL80211_CMD_CONNECT request will
1428 * let the driver (or the firmware) decide whether to use MFP or not.
1412 * 1429 *
1413 * @NL80211_ATTR_STA_FLAGS2: Attribute containing a 1430 * @NL80211_ATTR_STA_FLAGS2: Attribute containing a
1414 * &struct nl80211_sta_flag_update. 1431 * &struct nl80211_sta_flag_update.
@@ -2134,10 +2151,7 @@ enum nl80211_commands {
2134 * in %NL80211_CMD_CONNECT to indicate that for 802.1X authentication it 2151 * in %NL80211_CMD_CONNECT to indicate that for 802.1X authentication it
2135 * wants to use the supported offload of the 4-way handshake. 2152 * wants to use the supported offload of the 4-way handshake.
2136 * @NL80211_ATTR_PMKR0_NAME: PMK-R0 Name for offloaded FT. 2153 * @NL80211_ATTR_PMKR0_NAME: PMK-R0 Name for offloaded FT.
2137 * @NL80211_ATTR_PORT_AUTHORIZED: flag attribute used in %NL80211_CMD_ROAMED 2154 * @NL80211_ATTR_PORT_AUTHORIZED: (reserved)
2138 * notification indicating that that 802.1X authentication was done by
2139 * the driver or is not needed (because roaming used the Fast Transition
2140 * protocol).
2141 * 2155 *
2142 * @NUM_NL80211_ATTR: total number of nl80211_attrs available 2156 * @NUM_NL80211_ATTR: total number of nl80211_attrs available
2143 * @NL80211_ATTR_MAX: highest attribute number currently defined 2157 * @NL80211_ATTR_MAX: highest attribute number currently defined
@@ -3947,10 +3961,12 @@ enum nl80211_key_type {
3947 * enum nl80211_mfp - Management frame protection state 3961 * enum nl80211_mfp - Management frame protection state
3948 * @NL80211_MFP_NO: Management frame protection not used 3962 * @NL80211_MFP_NO: Management frame protection not used
3949 * @NL80211_MFP_REQUIRED: Management frame protection required 3963 * @NL80211_MFP_REQUIRED: Management frame protection required
3964 * @NL80211_MFP_OPTIONAL: Management frame protection is optional
3950 */ 3965 */
3951enum nl80211_mfp { 3966enum nl80211_mfp {
3952 NL80211_MFP_NO, 3967 NL80211_MFP_NO,
3953 NL80211_MFP_REQUIRED, 3968 NL80211_MFP_REQUIRED,
3969 NL80211_MFP_OPTIONAL,
3954}; 3970};
3955 3971
3956enum nl80211_wpa_versions { 3972enum nl80211_wpa_versions {
@@ -4914,6 +4930,17 @@ enum nl80211_feature_flags {
4914 * handshake with 802.1X in station mode (will pass EAP frames to the host 4930 * handshake with 802.1X in station mode (will pass EAP frames to the host
4915 * and accept the set_pmk/del_pmk commands), doing it in the host might not 4931 * and accept the set_pmk/del_pmk commands), doing it in the host might not
4916 * be supported. 4932 * be supported.
4933 * @NL80211_EXT_FEATURE_FILS_MAX_CHANNEL_TIME: Driver is capable of overriding
4934 * the max channel attribute in the FILS request params IE with the
4935 * actual dwell time.
4936 * @NL80211_EXT_FEATURE_ACCEPT_BCAST_PROBE_RESP: Driver accepts broadcast probe
4937 * response
4938 * @NL80211_EXT_FEATURE_OCE_PROBE_REQ_HIGH_TX_RATE: Driver supports sending
4939 * the first probe request in each channel at rate of at least 5.5Mbps.
4940 * @NL80211_EXT_FEATURE_OCE_PROBE_REQ_DEFERRAL_SUPPRESSION: Driver supports
4941 * probe request tx deferral and suppression
4942 * @NL80211_EXT_FEATURE_MFP_OPTIONAL: Driver supports the %NL80211_MFP_OPTIONAL
4943 * value in %NL80211_ATTR_USE_MFP.
4917 * 4944 *
4918 * @NUM_NL80211_EXT_FEATURES: number of extended features. 4945 * @NUM_NL80211_EXT_FEATURES: number of extended features.
4919 * @MAX_NL80211_EXT_FEATURES: highest extended feature index. 4946 * @MAX_NL80211_EXT_FEATURES: highest extended feature index.
@@ -4936,6 +4963,11 @@ enum nl80211_ext_feature_index {
4936 NL80211_EXT_FEATURE_FILS_SK_OFFLOAD, 4963 NL80211_EXT_FEATURE_FILS_SK_OFFLOAD,
4937 NL80211_EXT_FEATURE_4WAY_HANDSHAKE_STA_PSK, 4964 NL80211_EXT_FEATURE_4WAY_HANDSHAKE_STA_PSK,
4938 NL80211_EXT_FEATURE_4WAY_HANDSHAKE_STA_1X, 4965 NL80211_EXT_FEATURE_4WAY_HANDSHAKE_STA_1X,
4966 NL80211_EXT_FEATURE_FILS_MAX_CHANNEL_TIME,
4967 NL80211_EXT_FEATURE_ACCEPT_BCAST_PROBE_RESP,
4968 NL80211_EXT_FEATURE_OCE_PROBE_REQ_HIGH_TX_RATE,
4969 NL80211_EXT_FEATURE_OCE_PROBE_REQ_DEFERRAL_SUPPRESSION,
4970 NL80211_EXT_FEATURE_MFP_OPTIONAL,
4939 4971
4940 /* add new features before the definition below */ 4972 /* add new features before the definition below */
4941 NUM_NL80211_EXT_FEATURES, 4973 NUM_NL80211_EXT_FEATURES,
@@ -5012,12 +5044,28 @@ enum nl80211_timeout_reason {
5012 * locally administered 1, multicast 0) is assumed. 5044 * locally administered 1, multicast 0) is assumed.
5013 * This flag must not be requested when the feature isn't supported, check 5045 * This flag must not be requested when the feature isn't supported, check
5014 * the nl80211 feature flags for the device. 5046 * the nl80211 feature flags for the device.
5047 * @NL80211_SCAN_FLAG_FILS_MAX_CHANNEL_TIME: fill the dwell time in the FILS
5048 * request parameters IE in the probe request
5049 * @NL80211_SCAN_FLAG_ACCEPT_BCAST_PROBE_RESP: accept broadcast probe responses
5050 * @NL80211_SCAN_FLAG_OCE_PROBE_REQ_HIGH_TX_RATE: send probe request frames at
5051 * rate of at least 5.5M. In case non OCE AP is dicovered in the channel,
5052 * only the first probe req in the channel will be sent in high rate.
5053 * @NL80211_SCAN_FLAG_OCE_PROBE_REQ_DEFERRAL_SUPPRESSION: allow probe request
5054 * tx deferral (dot11FILSProbeDelay shall be set to 15ms)
5055 * and suppression (if it has received a broadcast Probe Response frame,
5056 * Beacon frame or FILS Discovery frame from an AP that the STA considers
5057 * a suitable candidate for (re-)association - suitable in terms of
5058 * SSID and/or RSSI
5015 */ 5059 */
5016enum nl80211_scan_flags { 5060enum nl80211_scan_flags {
5017 NL80211_SCAN_FLAG_LOW_PRIORITY = 1<<0, 5061 NL80211_SCAN_FLAG_LOW_PRIORITY = 1<<0,
5018 NL80211_SCAN_FLAG_FLUSH = 1<<1, 5062 NL80211_SCAN_FLAG_FLUSH = 1<<1,
5019 NL80211_SCAN_FLAG_AP = 1<<2, 5063 NL80211_SCAN_FLAG_AP = 1<<2,
5020 NL80211_SCAN_FLAG_RANDOM_ADDR = 1<<3, 5064 NL80211_SCAN_FLAG_RANDOM_ADDR = 1<<3,
5065 NL80211_SCAN_FLAG_FILS_MAX_CHANNEL_TIME = 1<<4,
5066 NL80211_SCAN_FLAG_ACCEPT_BCAST_PROBE_RESP = 1<<5,
5067 NL80211_SCAN_FLAG_OCE_PROBE_REQ_HIGH_TX_RATE = 1<<6,
5068 NL80211_SCAN_FLAG_OCE_PROBE_REQ_DEFERRAL_SUPPRESSION = 1<<7,
5021}; 5069};
5022 5070
5023/** 5071/**