Johannes Berg says: ==================== For 4.11, we seem to have more than in the past few releases: * socket owner support for connections, so when the wifi manager (e.g. wpa_supplicant) is killed, connections are torn down - wpa_supplicant is critical to managing certain operations, and can opt in to this where applicable * minstrel & minstrel_ht updates to be more efficient (time and space) * set wifi_acked/wifi_acked_valid for skb->destructor use in the kernel, which was already available to userspace * don't indicate new mesh peers that might be used if there's no room to add them * multicast-to-unicast support in mac80211, for better medium usage (since unicast frames can use *much* higher rates, by ~3 orders of magnitude) * add API to read channel (frequency) limitations from DT * add infrastructure to allow randomizing public action frames for MAC address privacy (still requires driver support) * many cleanups and small improvements/fixes across the board ====================
Showing the changes to include/uapi/linux (1 of 49 files). Show all
Unified · Split
| @@ -1820,6 +1820,8 @@ enum nl80211_commands { · 1819 unmodified lines | |||
| 1820 | * and remove functions. NAN notifications will be sent in unicast to that | 1820 | * and remove functions. NAN notifications will be sent in unicast to that |
| 1821 | * socket. Without this attribute, any socket can add functions and the | 1821 | * socket. Without this attribute, any socket can add functions and the |
| 1822 | * notifications will be sent to the %NL80211_MCGRP_NAN multicast group. | 1822 | * notifications will be sent to the %NL80211_MCGRP_NAN multicast group. |
| 1823 | * If set during %NL80211_CMD_ASSOCIATE or %NL80211_CMD_CONNECT the | ||
| 1824 | * station will deauthenticate when the socket is closed. | ||
| 1823 | * | 1825 | * |
| 1824 | * @NL80211_ATTR_TDLS_INITIATOR: flag attribute indicating the current end is | 1826 | * @NL80211_ATTR_TDLS_INITIATOR: flag attribute indicating the current end is |
| 1825 | * the TDLS link initiator. | 1827 | * the TDLS link initiator. |
| @@ -1980,6 +1982,24 @@ enum nl80211_commands { · 154 unmodified lines | |||
| 1980 | * @NL80211_ATTR_BSSID: The BSSID of the AP. Note that %NL80211_ATTR_MAC is also | 1982 | * @NL80211_ATTR_BSSID: The BSSID of the AP. Note that %NL80211_ATTR_MAC is also |
| 1981 | * used in various commands/events for specifying the BSSID. | 1983 | * used in various commands/events for specifying the BSSID. |
| 1982 | * | 1984 | * |
| 1985 | * @NL80211_ATTR_SCHED_SCAN_RELATIVE_RSSI: Relative RSSI threshold by which | ||
| 1986 | * other BSSs has to be better or slightly worse than the current | ||
| 1987 | * connected BSS so that they get reported to user space. | ||
| 1988 | * This will give an opportunity to userspace to consider connecting to | ||
| 1989 | * other matching BSSs which have better or slightly worse RSSI than | ||
| 1990 | * the current connected BSS by using an offloaded operation to avoid | ||
| 1991 | * unnecessary wakeups. | ||
| 1992 | * | ||
| 1993 | * @NL80211_ATTR_SCHED_SCAN_RSSI_ADJUST: When present the RSSI level for BSSs in | ||
| 1994 | * the specified band is to be adjusted before doing | ||
| 1995 | * %NL80211_ATTR_SCHED_SCAN_RELATIVE_RSSI based comparision to figure out | ||
| 1996 | * better BSSs. The attribute value is a packed structure | ||
| 1997 | * value as specified by &struct nl80211_bss_select_rssi_adjust. | ||
| 1998 | * | ||
| 1999 | * @NL80211_ATTR_TIMEOUT_REASON: The reason for which an operation timed out. | ||
| 2000 | * u32 attribute with an &enum nl80211_timeout_reason value. This is used, | ||
| 2001 | * e.g., with %NL80211_CMD_CONNECT event. | ||
| 2002 | * | ||
| 1983 | * @NUM_NL80211_ATTR: total number of nl80211_attrs available | 2003 | * @NUM_NL80211_ATTR: total number of nl80211_attrs available |
| 1984 | * @NL80211_ATTR_MAX: highest attribute number currently defined | 2004 | * @NL80211_ATTR_MAX: highest attribute number currently defined |
| 1985 | * @__NL80211_ATTR_AFTER_LAST: internal use | 2005 | * @__NL80211_ATTR_AFTER_LAST: internal use |
| @@ -2386,6 +2406,11 @@ enum nl80211_attrs { · 400 unmodified lines | |||
| 2386 | 2406 | ||
| 2387 | NL80211_ATTR_BSSID, | 2407 | NL80211_ATTR_BSSID, |
| 2388 | 2408 | ||
| 2409 | NL80211_ATTR_SCHED_SCAN_RELATIVE_RSSI, | ||
| 2410 | NL80211_ATTR_SCHED_SCAN_RSSI_ADJUST, | ||
| 2411 | |||
| 2412 | NL80211_ATTR_TIMEOUT_REASON, | ||
| 2413 | |||
| 2389 | /* add attributes here, update the policy in nl80211.c */ | 2414 | /* add attributes here, update the policy in nl80211.c */ |
| 2390 | 2415 | ||
| 2391 | __NL80211_ATTR_AFTER_LAST, | 2416 | __NL80211_ATTR_AFTER_LAST, |
| @@ -3078,6 +3103,13 @@ enum nl80211_reg_rule_attr { · 686 unmodified lines | |||
| 3078 | * how this API was implemented in the past. Also, due to the same problem, | 3103 | * how this API was implemented in the past. Also, due to the same problem, |
| 3079 | * the only way to create a matchset with only an RSSI filter (with this | 3104 | * the only way to create a matchset with only an RSSI filter (with this |
| 3080 | * attribute) is if there's only a single matchset with the RSSI attribute. | 3105 | * attribute) is if there's only a single matchset with the RSSI attribute. |
| 3106 | * @NL80211_SCHED_SCAN_MATCH_ATTR_RELATIVE_RSSI: Flag indicating whether | ||
| 3107 | * %NL80211_SCHED_SCAN_MATCH_ATTR_RSSI to be used as absolute RSSI or | ||
| 3108 | * relative to current bss's RSSI. | ||
| 3109 | * @NL80211_SCHED_SCAN_MATCH_ATTR_RSSI_ADJUST: When present the RSSI level for | ||
| 3110 | * BSS-es in the specified band is to be adjusted before doing | ||
| 3111 | * RSSI-based BSS selection. The attribute value is a packed structure | ||
| 3112 | * value as specified by &struct nl80211_bss_select_rssi_adjust. | ||
| 3081 | * @NL80211_SCHED_SCAN_MATCH_ATTR_MAX: highest scheduled scan filter | 3113 | * @NL80211_SCHED_SCAN_MATCH_ATTR_MAX: highest scheduled scan filter |
| 3082 | * attribute number currently defined | 3114 | * attribute number currently defined |
| 3083 | * @__NL80211_SCHED_SCAN_MATCH_ATTR_AFTER_LAST: internal use | 3115 | * @__NL80211_SCHED_SCAN_MATCH_ATTR_AFTER_LAST: internal use |
| @@ -3087,6 +3119,8 @@ enum nl80211_sched_scan_match_attr { · 3 unmodified lines | |||
| 3087 | 3119 | ||
| 3088 | NL80211_SCHED_SCAN_MATCH_ATTR_SSID, | 3120 | NL80211_SCHED_SCAN_MATCH_ATTR_SSID, |
| 3089 | NL80211_SCHED_SCAN_MATCH_ATTR_RSSI, | 3121 | NL80211_SCHED_SCAN_MATCH_ATTR_RSSI, |
| 3122 | NL80211_SCHED_SCAN_MATCH_ATTR_RELATIVE_RSSI, | ||
| 3123 | NL80211_SCHED_SCAN_MATCH_ATTR_RSSI_ADJUST, | ||
| 3090 | 3124 | ||
| 3091 | /* keep last */ | 3125 | /* keep last */ |
| 3092 | __NL80211_SCHED_SCAN_MATCH_ATTR_AFTER_LAST, | 3126 | __NL80211_SCHED_SCAN_MATCH_ATTR_AFTER_LAST, |
| @@ -4697,6 +4731,13 @@ enum nl80211_feature_flags { · 1604 unmodified lines | |||
| 4697 | * configuration (AP/mesh) with VHT rates. | 4731 | * configuration (AP/mesh) with VHT rates. |
| 4698 | * @NL80211_EXT_FEATURE_FILS_STA: This driver supports Fast Initial Link Setup | 4732 | * @NL80211_EXT_FEATURE_FILS_STA: This driver supports Fast Initial Link Setup |
| 4699 | * with user space SME (NL80211_CMD_AUTHENTICATE) in station mode. | 4733 | * with user space SME (NL80211_CMD_AUTHENTICATE) in station mode. |
| 4734 | * @NL80211_EXT_FEATURE_MGMT_TX_RANDOM_TA: This driver supports randomized TA | ||
| 4735 | * in @NL80211_CMD_FRAME while not associated. | ||
| 4736 | * @NL80211_EXT_FEATURE_MGMT_TX_RANDOM_TA_CONNECTED: This driver supports | ||
| 4737 | * randomized TA in @NL80211_CMD_FRAME while associated. | ||
| 4738 | * @NL80211_EXT_FEATURE_SCHED_SCAN_RELATIVE_RSSI: The driver supports sched_scan | ||
| 4739 | * for reporting BSSs with better RSSI than the current connected BSS | ||
| 4740 | * (%NL80211_ATTR_SCHED_SCAN_RELATIVE_RSSI). | ||
| 4700 | * | 4741 | * |
| 4701 | * @NUM_NL80211_EXT_FEATURES: number of extended features. | 4742 | * @NUM_NL80211_EXT_FEATURES: number of extended features. |
| 4702 | * @MAX_NL80211_EXT_FEATURES: highest extended feature index. | 4743 | * @MAX_NL80211_EXT_FEATURES: highest extended feature index. |
| @@ -4712,6 +4753,9 @@ enum nl80211_ext_feature_index { · 9 unmodified lines | |||
| 4712 | NL80211_EXT_FEATURE_BEACON_RATE_HT, | 4753 | NL80211_EXT_FEATURE_BEACON_RATE_HT, |
| 4713 | NL80211_EXT_FEATURE_BEACON_RATE_VHT, | 4754 | NL80211_EXT_FEATURE_BEACON_RATE_VHT, |
| 4714 | NL80211_EXT_FEATURE_FILS_STA, | 4755 | NL80211_EXT_FEATURE_FILS_STA, |
| 4756 | NL80211_EXT_FEATURE_MGMT_TX_RANDOM_TA, | ||
| 4757 | NL80211_EXT_FEATURE_MGMT_TX_RANDOM_TA_CONNECTED, | ||
| 4758 | NL80211_EXT_FEATURE_SCHED_SCAN_RELATIVE_RSSI, | ||
| 4715 | 4759 | ||
| 4716 | /* add new features before the definition below */ | 4760 | /* add new features before the definition below */ |
| 4717 | NUM_NL80211_EXT_FEATURES, | 4761 | NUM_NL80211_EXT_FEATURES, |
| @@ -4750,6 +4794,21 @@ enum nl80211_connect_failed_reason { · 32 unmodified lines | |||
| 4750 | NL80211_CONN_FAIL_BLOCKED_CLIENT, | 4794 | NL80211_CONN_FAIL_BLOCKED_CLIENT, |
| 4751 | }; | 4795 | }; |
| 4752 | 4796 | ||
| 4797 | /** | ||
| 4798 | * enum nl80211_timeout_reason - timeout reasons | ||
| 4799 | * | ||
| 4800 | * @NL80211_TIMEOUT_UNSPECIFIED: Timeout reason unspecified. | ||
| 4801 | * @NL80211_TIMEOUT_SCAN: Scan (AP discovery) timed out. | ||
| 4802 | * @NL80211_TIMEOUT_AUTH: Authentication timed out. | ||
| 4803 | * @NL80211_TIMEOUT_ASSOC: Association timed out. | ||
| 4804 | */ | ||
| 4805 | enum nl80211_timeout_reason { | ||
| 4806 | NL80211_TIMEOUT_UNSPECIFIED, | ||
| 4807 | NL80211_TIMEOUT_SCAN, | ||
| 4808 | NL80211_TIMEOUT_AUTH, | ||
| 4809 | NL80211_TIMEOUT_ASSOC, | ||
| 4810 | }; | ||
| 4811 | |||
| 4753 | /** | 4812 | /** |
| 4754 | * enum nl80211_scan_flags - scan request control flags | 4813 | * enum nl80211_scan_flags - scan request control flags |
| 4755 | * | 4814 | * |
| @@ -4964,8 +5023,9 @@ enum nl80211_sched_scan_plan { · 208 unmodified lines | |||
| 4964 | /** | 5023 | /** |
| 4965 | * struct nl80211_bss_select_rssi_adjust - RSSI adjustment parameters. | 5024 | * struct nl80211_bss_select_rssi_adjust - RSSI adjustment parameters. |
| 4966 | * | 5025 | * |
| 4967 | * @band: band of BSS that must match for RSSI value adjustment. | 5026 | * @band: band of BSS that must match for RSSI value adjustment. The value |
| 4968 | * @delta: value used to adjust the RSSI value of matching BSS. | 5027 | * of this field is according to &enum nl80211_band. |
| 5028 | * @delta: value used to adjust the RSSI value of matching BSS in dB. | ||
| 4969 | */ | 5029 | */ |
| 4970 | struct nl80211_bss_select_rssi_adjust { | 5030 | struct nl80211_bss_select_rssi_adjust { |
| 4971 | __u8 band; | 5031 | __u8 band; |