Johannes Berg says: ==================== Highlights: * merge net-next, so I can finish the hwsim workqueue removal * fix TXQ NULL pointer issue that was reported multiple times * minstrel cleanups from Felix * simplify lib80211 code by not using skcipher, note that this will conflict with the crypto tree (and this new code here should be used) * use new netlink policy validation in nl80211 * fix up SAE (part of WPA3) in client-mode * FTM responder support in the stack ====================
Showing the changes to include/uapi/linux (1 of 31 files). Show all
Unified · Split
| @@ -1033,6 +1033,9 @@ · 1032 unmodified lines | ||
| 1033 | 1033 | * %NL80211_ATTR_CHANNEL_WIDTH,%NL80211_ATTR_NSS attributes with its |
| 1034 | 1034 | * address(specified in %NL80211_ATTR_MAC). |
| 1035 | 1035 | * |
| 1036 | + * @NL80211_CMD_GET_FTM_RESPONDER_STATS: Retrieve FTM responder statistics, in | |
| 1037 | + * the %NL80211_ATTR_FTM_RESPONDER_STATS attribute. | |
| 1038 | + * | |
| 1036 | 1039 | * @NL80211_CMD_MAX: highest used command number |
| 1037 | 1040 | * @__NL80211_CMD_AFTER_LAST: internal use |
| 1038 | 1041 | */ |
| @@ -1245,6 +1248,8 @@ enum nl80211_commands { · 206 unmodified lines | ||
| 1245 | 1248 | |
| 1246 | 1249 | NL80211_CMD_CONTROL_PORT_FRAME, |
| 1247 | 1250 | |
| 1251 | + NL80211_CMD_GET_FTM_RESPONDER_STATS, | |
| 1252 | + | |
| 1248 | 1253 | /* add new commands above here */ |
| 1249 | 1254 | |
| 1250 | 1255 | /* used to define NL80211_CMD_MAX below */ |
| @@ -2241,6 +2246,14 @@ enum nl80211_commands { · 990 unmodified lines | ||
| 2241 | 2246 | * association request when used with NL80211_CMD_NEW_STATION). Can be set |
| 2242 | 2247 | * only if %NL80211_STA_FLAG_WME is set. |
| 2243 | 2248 | * |
| 2249 | + * @NL80211_ATTR_FTM_RESPONDER: nested attribute which user-space can include | |
| 2250 | + * in %NL80211_CMD_START_AP or %NL80211_CMD_SET_BEACON for fine timing | |
| 2251 | + * measurement (FTM) responder functionality and containing parameters as | |
| 2252 | + * possible, see &enum nl80211_ftm_responder_attr | |
| 2253 | + * | |
| 2254 | + * @NL80211_ATTR_FTM_RESPONDER_STATS: Nested attribute with FTM responder | |
| 2255 | + * statistics, see &enum nl80211_ftm_responder_stats. | |
| 2256 | + * | |
| 2244 | 2257 | * @NUM_NL80211_ATTR: total number of nl80211_attrs available |
| 2245 | 2258 | * @NL80211_ATTR_MAX: highest attribute number currently defined |
| 2246 | 2259 | * @__NL80211_ATTR_AFTER_LAST: internal use |
| @@ -2682,6 +2695,10 @@ enum nl80211_attrs { · 435 unmodified lines | ||
| 2682 | 2695 | |
| 2683 | 2696 | NL80211_ATTR_HE_CAPABILITY, |
| 2684 | 2697 | |
| 2698 | + NL80211_ATTR_FTM_RESPONDER, | |
| 2699 | + | |
| 2700 | + NL80211_ATTR_FTM_RESPONDER_STATS, | |
| 2701 | + | |
| 2685 | 2702 | /* add attributes here, update the policy in nl80211.c */ |
| 2686 | 2703 | |
| 2687 | 2704 | __NL80211_ATTR_AFTER_LAST, |
| @@ -3051,6 +3068,12 @@ enum nl80211_sta_bss_param { · 363 unmodified lines | ||
| 3051 | 3068 | * @NL80211_STA_INFO_PAD: attribute used for padding for 64-bit alignment |
| 3052 | 3069 | * @NL80211_STA_INFO_ACK_SIGNAL: signal strength of the last ACK frame(u8, dBm) |
| 3053 | 3070 | * @NL80211_STA_INFO_ACK_SIGNAL_AVG: avg signal strength of ACK frames (s8, dBm) |
| 3071 | + * @NL80211_STA_INFO_RX_MPDUS: total number of received packets (MPDUs) | |
| 3072 | + * (u32, from this station) | |
| 3073 | + * @NL80211_STA_INFO_FCS_ERROR_COUNT: total number of packets (MPDUs) received | |
| 3074 | + * with an FCS error (u32, from this station). This count may not include | |
| 3075 | + * some packets with an FCS error due to TA corruption. Hence this counter | |
| 3076 | + * might not be fully accurate. | |
| 3054 | 3077 | * @__NL80211_STA_INFO_AFTER_LAST: internal |
| 3055 | 3078 | * @NL80211_STA_INFO_MAX: highest possible station info attribute |
| 3056 | 3079 | */ |
| @@ -3091,6 +3114,8 @@ enum nl80211_sta_info { · 34 unmodified lines | ||
| 3091 | 3114 | NL80211_STA_INFO_PAD, |
| 3092 | 3115 | NL80211_STA_INFO_ACK_SIGNAL, |
| 3093 | 3116 | NL80211_STA_INFO_ACK_SIGNAL_AVG, |
| 3117 | + NL80211_STA_INFO_RX_MPDUS, | |
| 3118 | + NL80211_STA_INFO_FCS_ERROR_COUNT, | |
| 3094 | 3119 | |
| 3095 | 3120 | /* keep last */ |
| 3096 | 3121 | __NL80211_STA_INFO_AFTER_LAST, |
| @@ -5225,6 +5250,8 @@ enum nl80211_feature_flags { · 2128 unmodified lines | ||
| 5225 | 5250 | * @NL80211_EXT_FEATURE_SCAN_MIN_PREQ_CONTENT: Driver/device can omit all data |
| 5226 | 5251 | * except for supported rates from the probe request content if requested |
| 5227 | 5252 | * by the %NL80211_SCAN_FLAG_MIN_PREQ_CONTENT flag. |
| 5253 | + * @NL80211_EXT_FEATURE_ENABLE_FTM_RESPONDER: Driver supports enabling fine | |
| 5254 | + * timing measurement responder role. | |
| 5228 | 5255 | * |
| 5229 | 5256 | * @NL80211_EXT_FEATURE_CAN_REPLACE_PTK0: Driver/device confirm that they are |
| 5230 | 5257 | * able to rekey an in-use key correctly. Userspace must not rekey PTK keys |
| @@ -5269,6 +5296,7 @@ enum nl80211_ext_feature_index { · 38 unmodified lines | ||
| 5269 | 5296 | NL80211_EXT_FEATURE_SCAN_RANDOM_SN, |
| 5270 | 5297 | NL80211_EXT_FEATURE_SCAN_MIN_PREQ_CONTENT, |
| 5271 | 5298 | NL80211_EXT_FEATURE_CAN_REPLACE_PTK0, |
| 5299 | + NL80211_EXT_FEATURE_ENABLE_FTM_RESPONDER, | |
| 5272 | 5300 | |
| 5273 | 5301 | /* add new features before the definition below */ |
| 5274 | 5302 | NUM_NL80211_EXT_FEATURES, |
| @@ -5808,4 +5836,74 @@ enum nl80211_external_auth_action { · 533 unmodified lines | ||
| 5808 | 5836 | NL80211_EXTERNAL_AUTH_ABORT, |
| 5809 | 5837 | }; |
| 5810 | 5838 | |
| 5839 | +/** | |
| 5840 | + * enum nl80211_ftm_responder_attributes - fine timing measurement | |
| 5841 | + * responder attributes | |
| 5842 | + * @__NL80211_FTM_RESP_ATTR_INVALID: Invalid | |
| 5843 | + * @NL80211_FTM_RESP_ATTR_ENABLED: FTM responder is enabled | |
| 5844 | + * @NL80211_FTM_RESP_ATTR_LCI: The content of Measurement Report Element | |
| 5845 | + * (9.4.2.22 in 802.11-2016) with type 8 - LCI (9.4.2.22.10) | |
| 5846 | + * @NL80211_FTM_RESP_ATTR_CIVIC: The content of Measurement Report Element | |
| 5847 | + * (9.4.2.22 in 802.11-2016) with type 11 - Civic (Section 9.4.2.22.13) | |
| 5848 | + * @__NL80211_FTM_RESP_ATTR_LAST: Internal | |
| 5849 | + * @NL80211_FTM_RESP_ATTR_MAX: highest FTM responder attribute. | |
| 5850 | + */ | |
| 5851 | +enum nl80211_ftm_responder_attributes { | |
| 5852 | + __NL80211_FTM_RESP_ATTR_INVALID, | |
| 5853 | + | |
| 5854 | + NL80211_FTM_RESP_ATTR_ENABLED, | |
| 5855 | + NL80211_FTM_RESP_ATTR_LCI, | |
| 5856 | + NL80211_FTM_RESP_ATTR_CIVICLOC, | |
| 5857 | + | |
| 5858 | + /* keep last */ | |
| 5859 | + __NL80211_FTM_RESP_ATTR_LAST, | |
| 5860 | + NL80211_FTM_RESP_ATTR_MAX = __NL80211_FTM_RESP_ATTR_LAST - 1, | |
| 5861 | +}; | |
| 5862 | + | |
| 5863 | +/* | |
| 5864 | + * enum nl80211_ftm_responder_stats - FTM responder statistics | |
| 5865 | + * | |
| 5866 | + * These attribute types are used with %NL80211_ATTR_FTM_RESPONDER_STATS | |
| 5867 | + * when getting FTM responder statistics. | |
| 5868 | + * | |
| 5869 | + * @__NL80211_FTM_STATS_INVALID: attribute number 0 is reserved | |
| 5870 | + * @NL80211_FTM_STATS_SUCCESS_NUM: number of FTM sessions in which all frames | |
| 5871 | + * were ssfully answered (u32) | |
| 5872 | + * @NL80211_FTM_STATS_PARTIAL_NUM: number of FTM sessions in which part of the | |
| 5873 | + * frames were successfully answered (u32) | |
| 5874 | + * @NL80211_FTM_STATS_FAILED_NUM: number of failed FTM sessions (u32) | |
| 5875 | + * @NL80211_FTM_STATS_ASAP_NUM: number of ASAP sessions (u32) | |
| 5876 | + * @NL80211_FTM_STATS_NON_ASAP_NUM: number of non-ASAP sessions (u32) | |
| 5877 | + * @NL80211_FTM_STATS_TOTAL_DURATION_MSEC: total sessions durations - gives an | |
| 5878 | + * indication of how much time the responder was busy (u64, msec) | |
| 5879 | + * @NL80211_FTM_STATS_UNKNOWN_TRIGGERS_NUM: number of unknown FTM triggers - | |
| 5880 | + * triggers from initiators that didn't finish successfully the negotiation | |
| 5881 | + * phase with the responder (u32) | |
| 5882 | + * @NL80211_FTM_STATS_RESCHEDULE_REQUESTS_NUM: number of FTM reschedule requests | |
| 5883 | + * - initiator asks for a new scheduling although it already has scheduled | |
| 5884 | + * FTM slot (u32) | |
| 5885 | + * @NL80211_FTM_STATS_OUT_OF_WINDOW_TRIGGERS_NUM: number of FTM triggers out of | |
| 5886 | + * scheduled window (u32) | |
| 5887 | + * @NL80211_FTM_STATS_PAD: used for padding, ignore | |
| 5888 | + * @__NL80211_TXQ_ATTR_AFTER_LAST: Internal | |
| 5889 | + * @NL80211_FTM_STATS_MAX: highest possible FTM responder stats attribute | |
| 5890 | + */ | |
| 5891 | +enum nl80211_ftm_responder_stats { | |
| 5892 | + __NL80211_FTM_STATS_INVALID, | |
| 5893 | + NL80211_FTM_STATS_SUCCESS_NUM, | |
| 5894 | + NL80211_FTM_STATS_PARTIAL_NUM, | |
| 5895 | + NL80211_FTM_STATS_FAILED_NUM, | |
| 5896 | + NL80211_FTM_STATS_ASAP_NUM, | |
| 5897 | + NL80211_FTM_STATS_NON_ASAP_NUM, | |
| 5898 | + NL80211_FTM_STATS_TOTAL_DURATION_MSEC, | |
| 5899 | + NL80211_FTM_STATS_UNKNOWN_TRIGGERS_NUM, | |
| 5900 | + NL80211_FTM_STATS_RESCHEDULE_REQUESTS_NUM, | |
| 5901 | + NL80211_FTM_STATS_OUT_OF_WINDOW_TRIGGERS_NUM, | |
| 5902 | + NL80211_FTM_STATS_PAD, | |
| 5903 | + | |
| 5904 | + /* keep last */ | |
| 5905 | + __NL80211_FTM_STATS_AFTER_LAST, | |
| 5906 | + NL80211_FTM_STATS_MAX = __NL80211_FTM_STATS_AFTER_LAST - 1 | |
| 5907 | +}; | |
| 5908 | + | |
| 5811 | 5909 | #endif /* __LINUX_NL80211_H */ |