diff options
Diffstat (limited to 'include/uapi/linux')
| -rw-r--r-- | include/uapi/linux/nl80211.h | 82 |
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 | */ |
| 3951 | enum nl80211_mfp { | 3966 | enum 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 | ||
| 3956 | enum nl80211_wpa_versions { | 3972 | enum 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 | */ |
| 5016 | enum nl80211_scan_flags { | 5060 | enum 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 | /** |
