Johannes Berg says: ==================== Various updates across wireless. One thing to note: I've included a new ethertype that wireless uses (ETH_P_PREAUTH) in if_ether.h. ====================
Showing the changes to include/uapi/linux (2 of 25 files). Show all
Unified · Split
| @@ -88,6 +88,7 @@ · 87 unmodified lines | |||
| 88 | #define ETH_P_AOE 0x88A2 /* ATA over Ethernet */ | 88 | #define ETH_P_AOE 0x88A2 /* ATA over Ethernet */ |
| 89 | #define ETH_P_8021AD 0x88A8 /* 802.1ad Service VLAN */ | 89 | #define ETH_P_8021AD 0x88A8 /* 802.1ad Service VLAN */ |
| 90 | #define ETH_P_802_EX1 0x88B5 /* 802.1 Local Experimental 1. */ | 90 | #define ETH_P_802_EX1 0x88B5 /* 802.1 Local Experimental 1. */ |
| 91 | #define ETH_P_PREAUTH 0x88C7 /* 802.11 Preauthentication */ | ||
| 91 | #define ETH_P_TIPC 0x88CA /* TIPC */ | 92 | #define ETH_P_TIPC 0x88CA /* TIPC */ |
| 92 | #define ETH_P_MACSEC 0x88E5 /* 802.1ae MACsec */ | 93 | #define ETH_P_MACSEC 0x88E5 /* 802.1ae MACsec */ |
| 93 | #define ETH_P_8021AH 0x88E7 /* 802.1ah Backbone Service Tag */ | 94 | #define ETH_P_8021AH 0x88E7 /* 802.1ah Backbone Service Tag */ |
| @@ -992,6 +992,32 @@ · 991 unmodified lines | |||
| 992 | * | 992 | * |
| 993 | * @NL80211_CMD_RELOAD_REGDB: Request that the regdb firmware file is reloaded. | 993 | * @NL80211_CMD_RELOAD_REGDB: Request that the regdb firmware file is reloaded. |
| 994 | * | 994 | * |
| 995 | * @NL80211_CMD_EXTERNAL_AUTH: This interface is exclusively defined for host | ||
| 996 | * drivers that do not define separate commands for authentication and | ||
| 997 | * association, but rely on user space for the authentication to happen. | ||
| 998 | * This interface acts both as the event request (driver to user space) | ||
| 999 | * to trigger the authentication and command response (userspace to | ||
| 1000 | * driver) to indicate the authentication status. | ||
| 1001 | * | ||
| 1002 | * User space uses the %NL80211_CMD_CONNECT command to the host driver to | ||
| 1003 | * trigger a connection. The host driver selects a BSS and further uses | ||
| 1004 | * this interface to offload only the authentication part to the user | ||
| 1005 | * space. Authentication frames are passed between the driver and user | ||
| 1006 | * space through the %NL80211_CMD_FRAME interface. Host driver proceeds | ||
| 1007 | * further with the association after getting successful authentication | ||
| 1008 | * status. User space indicates the authentication status through | ||
| 1009 | * %NL80211_ATTR_STATUS_CODE attribute in %NL80211_CMD_EXTERNAL_AUTH | ||
| 1010 | * command interface. | ||
| 1011 | * | ||
| 1012 | * Host driver reports this status on an authentication failure to the | ||
| 1013 | * user space through the connect result as the user space would have | ||
| 1014 | * initiated the connection through the connect request. | ||
| 1015 | * | ||
| 1016 | * @NL80211_CMD_STA_OPMODE_CHANGED: An event that notify station's | ||
| 1017 | * ht opmode or vht opmode changes using any of &NL80211_ATTR_SMPS_MODE, | ||
| 1018 | * &NL80211_ATTR_CHANNEL_WIDTH,&NL80211_ATTR_NSS attributes with its | ||
| 1019 | * address(specified in &NL80211_ATTR_MAC). | ||
| 1020 | * | ||
| 995 | * @NL80211_CMD_MAX: highest used command number | 1021 | * @NL80211_CMD_MAX: highest used command number |
| 996 | * @__NL80211_CMD_AFTER_LAST: internal use | 1022 | * @__NL80211_CMD_AFTER_LAST: internal use |
| 997 | */ | 1023 | */ |
| @@ -1198,6 +1224,10 @@ enum nl80211_commands { · 200 unmodified lines | |||
| 1198 | 1224 | ||
| 1199 | NL80211_CMD_RELOAD_REGDB, | 1225 | NL80211_CMD_RELOAD_REGDB, |
| 1200 | 1226 | ||
| 1227 | NL80211_CMD_EXTERNAL_AUTH, | ||
| 1228 | |||
| 1229 | NL80211_CMD_STA_OPMODE_CHANGED, | ||
| 1230 | |||
| 1201 | /* add new commands above here */ | 1231 | /* add new commands above here */ |
| 1202 | 1232 | ||
| 1203 | /* used to define NL80211_CMD_MAX below */ | 1233 | /* used to define NL80211_CMD_MAX below */ |
| @@ -2153,6 +2183,19 @@ enum nl80211_commands { · 949 unmodified lines | |||
| 2153 | * @NL80211_ATTR_PMKR0_NAME: PMK-R0 Name for offloaded FT. | 2183 | * @NL80211_ATTR_PMKR0_NAME: PMK-R0 Name for offloaded FT. |
| 2154 | * @NL80211_ATTR_PORT_AUTHORIZED: (reserved) | 2184 | * @NL80211_ATTR_PORT_AUTHORIZED: (reserved) |
| 2155 | * | 2185 | * |
| 2186 | * @NL80211_ATTR_EXTERNAL_AUTH_ACTION: Identify the requested external | ||
| 2187 | * authentication operation (u32 attribute with an | ||
| 2188 | * &enum nl80211_external_auth_action value). This is used with the | ||
| 2189 | * &NL80211_CMD_EXTERNAL_AUTH request event. | ||
| 2190 | * @NL80211_ATTR_EXTERNAL_AUTH_SUPPORT: Flag attribute indicating that the user | ||
| 2191 | * space supports external authentication. This attribute shall be used | ||
| 2192 | * only with %NL80211_CMD_CONNECT request. The driver may offload | ||
| 2193 | * authentication processing to user space if this capability is indicated | ||
| 2194 | * in NL80211_CMD_CONNECT requests from the user space. | ||
| 2195 | * | ||
| 2196 | * @NL80211_ATTR_NSS: Station's New/updated RX_NSS value notified using this | ||
| 2197 | * u8 attribute. This is used with %NL80211_CMD_STA_OPMODE_CHANGED. | ||
| 2198 | * | ||
| 2156 | * @NUM_NL80211_ATTR: total number of nl80211_attrs available | 2199 | * @NUM_NL80211_ATTR: total number of nl80211_attrs available |
| 2157 | * @NL80211_ATTR_MAX: highest attribute number currently defined | 2200 | * @NL80211_ATTR_MAX: highest attribute number currently defined |
| 2158 | * @__NL80211_ATTR_AFTER_LAST: internal use | 2201 | * @__NL80211_ATTR_AFTER_LAST: internal use |
| @@ -2579,6 +2622,12 @@ enum nl80211_attrs { · 420 unmodified lines | |||
| 2579 | NL80211_ATTR_PMKR0_NAME, | 2622 | NL80211_ATTR_PMKR0_NAME, |
| 2580 | NL80211_ATTR_PORT_AUTHORIZED, | 2623 | NL80211_ATTR_PORT_AUTHORIZED, |
| 2581 | 2624 | ||
| 2625 | NL80211_ATTR_EXTERNAL_AUTH_ACTION, | ||
| 2626 | NL80211_ATTR_EXTERNAL_AUTH_SUPPORT, | ||
| 2627 | |||
| 2628 | NL80211_ATTR_NSS, | ||
| 2629 | NL80211_ATTR_ACK_SIGNAL, | ||
| 2630 | |||
| 2582 | /* add attributes here, update the policy in nl80211.c */ | 2631 | /* add attributes here, update the policy in nl80211.c */ |
| 2583 | 2632 | ||
| 2584 | __NL80211_ATTR_AFTER_LAST, | 2633 | __NL80211_ATTR_AFTER_LAST, |
| @@ -2899,6 +2948,7 @@ enum nl80211_sta_bss_param { · 314 unmodified lines | |||
| 2899 | * @NL80211_STA_INFO_RX_DURATION: aggregate PPDU duration for all frames | 2948 | * @NL80211_STA_INFO_RX_DURATION: aggregate PPDU duration for all frames |
| 2900 | * received from the station (u64, usec) | 2949 | * received from the station (u64, usec) |
| 2901 | * @NL80211_STA_INFO_PAD: attribute used for padding for 64-bit alignment | 2950 | * @NL80211_STA_INFO_PAD: attribute used for padding for 64-bit alignment |
| 2951 | * @NL80211_STA_INFO_ACK_SIGNAL: signal strength of the last ACK frame(u8, dBm) | ||
| 2902 | * @__NL80211_STA_INFO_AFTER_LAST: internal | 2952 | * @__NL80211_STA_INFO_AFTER_LAST: internal |
| 2903 | * @NL80211_STA_INFO_MAX: highest possible station info attribute | 2953 | * @NL80211_STA_INFO_MAX: highest possible station info attribute |
| 2904 | */ | 2954 | */ |
| @@ -2937,6 +2987,7 @@ enum nl80211_sta_info { · 32 unmodified lines | |||
| 2937 | NL80211_STA_INFO_TID_STATS, | 2987 | NL80211_STA_INFO_TID_STATS, |
| 2938 | NL80211_STA_INFO_RX_DURATION, | 2988 | NL80211_STA_INFO_RX_DURATION, |
| 2939 | NL80211_STA_INFO_PAD, | 2989 | NL80211_STA_INFO_PAD, |
| 2990 | NL80211_STA_INFO_ACK_SIGNAL, | ||
| 2940 | 2991 | ||
| 2941 | /* keep last */ | 2992 | /* keep last */ |
| 2942 | __NL80211_STA_INFO_AFTER_LAST, | 2993 | __NL80211_STA_INFO_AFTER_LAST, |
| @@ -4945,6 +4996,9 @@ enum nl80211_feature_flags { · 2002 unmodified lines | |||
| 4945 | * probe request tx deferral and suppression | 4996 | * probe request tx deferral and suppression |
| 4946 | * @NL80211_EXT_FEATURE_MFP_OPTIONAL: Driver supports the %NL80211_MFP_OPTIONAL | 4997 | * @NL80211_EXT_FEATURE_MFP_OPTIONAL: Driver supports the %NL80211_MFP_OPTIONAL |
| 4947 | * value in %NL80211_ATTR_USE_MFP. | 4998 | * value in %NL80211_ATTR_USE_MFP. |
| 4999 | * @NL80211_EXT_FEATURE_LOW_SPAN_SCAN: Driver supports low span scan. | ||
| 5000 | * @NL80211_EXT_FEATURE_LOW_POWER_SCAN: Driver supports low power scan. | ||
| 5001 | * @NL80211_EXT_FEATURE_HIGH_ACCURACY_SCAN: Driver supports high accuracy scan. | ||
| 4948 | * | 5002 | * |
| 4949 | * @NUM_NL80211_EXT_FEATURES: number of extended features. | 5003 | * @NUM_NL80211_EXT_FEATURES: number of extended features. |
| 4950 | * @MAX_NL80211_EXT_FEATURES: highest extended feature index. | 5004 | * @MAX_NL80211_EXT_FEATURES: highest extended feature index. |
| @@ -4972,6 +5026,9 @@ enum nl80211_ext_feature_index { · 21 unmodified lines | |||
| 4972 | NL80211_EXT_FEATURE_OCE_PROBE_REQ_HIGH_TX_RATE, | 5026 | NL80211_EXT_FEATURE_OCE_PROBE_REQ_HIGH_TX_RATE, |
| 4973 | NL80211_EXT_FEATURE_OCE_PROBE_REQ_DEFERRAL_SUPPRESSION, | 5027 | NL80211_EXT_FEATURE_OCE_PROBE_REQ_DEFERRAL_SUPPRESSION, |
| 4974 | NL80211_EXT_FEATURE_MFP_OPTIONAL, | 5028 | NL80211_EXT_FEATURE_MFP_OPTIONAL, |
| 5029 | NL80211_EXT_FEATURE_LOW_SPAN_SCAN, | ||
| 5030 | NL80211_EXT_FEATURE_LOW_POWER_SCAN, | ||
| 5031 | NL80211_EXT_FEATURE_HIGH_ACCURACY_SCAN, | ||
| 4975 | 5032 | ||
| 4976 | /* add new features before the definition below */ | 5033 | /* add new features before the definition below */ |
| 4977 | NUM_NL80211_EXT_FEATURES, | 5034 | NUM_NL80211_EXT_FEATURES, |
| @@ -5032,6 +5089,10 @@ enum nl80211_timeout_reason { · 54 unmodified lines | |||
| 5032 | * of NL80211_CMD_TRIGGER_SCAN and NL80211_CMD_START_SCHED_SCAN | 5089 | * of NL80211_CMD_TRIGGER_SCAN and NL80211_CMD_START_SCHED_SCAN |
| 5033 | * requests. | 5090 | * requests. |
| 5034 | * | 5091 | * |
| 5092 | * NL80211_SCAN_FLAG_LOW_SPAN, NL80211_SCAN_FLAG_LOW_POWER, and | ||
| 5093 | * NL80211_SCAN_FLAG_HIGH_ACCURACY flags are exclusive of each other, i.e., only | ||
| 5094 | * one of them can be used in the request. | ||
| 5095 | * | ||
| 5035 | * @NL80211_SCAN_FLAG_LOW_PRIORITY: scan request has low priority | 5096 | * @NL80211_SCAN_FLAG_LOW_PRIORITY: scan request has low priority |
| 5036 | * @NL80211_SCAN_FLAG_FLUSH: flush cache before scanning | 5097 | * @NL80211_SCAN_FLAG_FLUSH: flush cache before scanning |
| 5037 | * @NL80211_SCAN_FLAG_AP: force a scan even if the interface is configured | 5098 | * @NL80211_SCAN_FLAG_AP: force a scan even if the interface is configured |
| @@ -5059,7 +5120,20 @@ enum nl80211_timeout_reason { · 21 unmodified lines | |||
| 5059 | * and suppression (if it has received a broadcast Probe Response frame, | 5120 | * and suppression (if it has received a broadcast Probe Response frame, |
| 5060 | * Beacon frame or FILS Discovery frame from an AP that the STA considers | 5121 | * Beacon frame or FILS Discovery frame from an AP that the STA considers |
| 5061 | * a suitable candidate for (re-)association - suitable in terms of | 5122 | * a suitable candidate for (re-)association - suitable in terms of |
| 5062 | * SSID and/or RSSI | 5123 | * SSID and/or RSSI. |
| 5124 | * @NL80211_SCAN_FLAG_LOW_SPAN: Span corresponds to the total time taken to | ||
| 5125 | * accomplish the scan. Thus, this flag intends the driver to perform the | ||
| 5126 | * scan request with lesser span/duration. It is specific to the driver | ||
| 5127 | * implementations on how this is accomplished. Scan accuracy may get | ||
| 5128 | * impacted with this flag. | ||
| 5129 | * @NL80211_SCAN_FLAG_LOW_POWER: This flag intends the scan attempts to consume | ||
| 5130 | * optimal possible power. Drivers can resort to their specific means to | ||
| 5131 | * optimize the power. Scan accuracy may get impacted with this flag. | ||
| 5132 | * @NL80211_SCAN_FLAG_HIGH_ACCURACY: Accuracy here intends to the extent of scan | ||
| 5133 | * results obtained. Thus HIGH_ACCURACY scan flag aims to get maximum | ||
| 5134 | * possible scan results. This flag hints the driver to use the best | ||
| 5135 | * possible scan configuration to improve the accuracy in scanning. | ||
| 5136 | * Latency and power use may get impacted with this flag. | ||
| 5063 | */ | 5137 | */ |
| 5064 | enum nl80211_scan_flags { | 5138 | enum nl80211_scan_flags { |
| 5065 | NL80211_SCAN_FLAG_LOW_PRIORITY = 1<<0, | 5139 | NL80211_SCAN_FLAG_LOW_PRIORITY = 1<<0, |
| @@ -5070,6 +5144,9 @@ enum nl80211_scan_flags { · 4 unmodified lines | |||
| 5070 | NL80211_SCAN_FLAG_ACCEPT_BCAST_PROBE_RESP = 1<<5, | 5144 | NL80211_SCAN_FLAG_ACCEPT_BCAST_PROBE_RESP = 1<<5, |
| 5071 | NL80211_SCAN_FLAG_OCE_PROBE_REQ_HIGH_TX_RATE = 1<<6, | 5145 | NL80211_SCAN_FLAG_OCE_PROBE_REQ_HIGH_TX_RATE = 1<<6, |
| 5072 | NL80211_SCAN_FLAG_OCE_PROBE_REQ_DEFERRAL_SUPPRESSION = 1<<7, | 5146 | NL80211_SCAN_FLAG_OCE_PROBE_REQ_DEFERRAL_SUPPRESSION = 1<<7, |
| 5147 | NL80211_SCAN_FLAG_LOW_SPAN = 1<<8, | ||
| 5148 | NL80211_SCAN_FLAG_LOW_POWER = 1<<9, | ||
| 5149 | NL80211_SCAN_FLAG_HIGH_ACCURACY = 1<<10, | ||
| 5073 | }; | 5150 | }; |
| 5074 | 5151 | ||
| 5075 | /** | 5152 | /** |
| @@ -5469,4 +5546,15 @@ enum nl80211_nan_match_attributes { · 393 unmodified lines | |||
| 5469 | NL80211_NAN_MATCH_ATTR_MAX = NUM_NL80211_NAN_MATCH_ATTR - 1 | 5546 | NL80211_NAN_MATCH_ATTR_MAX = NUM_NL80211_NAN_MATCH_ATTR - 1 |
| 5470 | }; | 5547 | }; |
| 5471 | 5548 | ||
| 5549 | /** | ||
| 5550 | * nl80211_external_auth_action - Action to perform with external | ||
| 5551 | * authentication request. Used by NL80211_ATTR_EXTERNAL_AUTH_ACTION. | ||
| 5552 | * @NL80211_EXTERNAL_AUTH_START: Start the authentication. | ||
| 5553 | * @NL80211_EXTERNAL_AUTH_ABORT: Abort the ongoing authentication. | ||
| 5554 | */ | ||
| 5555 | enum nl80211_external_auth_action { | ||
| 5556 | NL80211_EXTERNAL_AUTH_START, | ||
| 5557 | NL80211_EXTERNAL_AUTH_ABORT, | ||
| 5558 | }; | ||
| 5559 | |||
| 5472 | #endif /* __LINUX_NL80211_H */ | 5560 | #endif /* __LINUX_NL80211_H */ |