+ * @NL80211_CMD_MAX: highest used command number
+ * @__NL80211_CMD_AFTER_LAST: internal use
+ */
+@@ -1069,6 +1178,13 @@ enum nl80211_commands {
+ NL80211_CMD_CHANGE_NAN_CONFIG,
+ NL80211_CMD_NAN_MATCH,
+
++ NL80211_CMD_SET_MULTICAST_TO_UNICAST,
++
++ NL80211_CMD_UPDATE_CONNECT_PARAMS,
++
++ NL80211_CMD_SET_PMK,
++ NL80211_CMD_DEL_PMK,
++
+ /* add new commands above here */
+
+ /* used to define NL80211_CMD_MAX below */
+@@ -1638,8 +1754,16 @@ enum nl80211_commands {
+ * the connection request from a station. nl80211_connect_failed_reason
+ * enum has different reasons of connection failure.
+ *
+- * @NL80211_ATTR_SAE_DATA: SAE elements in Authentication frames. This starts
+- * with the Authentication transaction sequence number field.
++ * @NL80211_ATTR_AUTH_DATA: Fields and elements in Authentication frames.
++ * This contains the authentication frame body (non-IE and IE data),
++ * excluding the Authentication algorithm number, i.e., starting at the
++ * Authentication transaction sequence number field. It is used with
++ * authentication algorithms that need special fields to be added into
++ * the frames (SAE and FILS). Currently, only the SAE cases use the
++ * initial two fields (Authentication transaction sequence number and
++ * Status code). However, those fields are included in the attribute data
++ * for all authentication algorithms to keep the attribute definition
++ * consistent.
+ *
+ * @NL80211_ATTR_VHT_CAPABILITY: VHT Capability information element (from
+ * association request when used with NL80211_CMD_NEW_STATION)
+@@ -1740,7 +1864,9 @@ enum nl80211_commands {
+ *
+ * @NL80211_ATTR_OPMODE_NOTIF: Operating mode field from Operating Mode
+ * Notification Element based on association request when used with
+- * %NL80211_CMD_NEW_STATION; u8 attribute.
++ * %NL80211_CMD_NEW_STATION or %NL80211_CMD_SET_STATION (only when
++ * %NL80211_FEATURE_FULL_AP_CLIENT_STATE is supported, or with TDLS);
++ * u8 attribute.
+ *
+ * @NL80211_ATTR_VENDOR_ID: The vendor ID, either a 24-bit OUI or, if
+ * %NL80211_VENDOR_ID_IS_LINUX is set, a special Linux ID (not used yet)
+@@ -1783,11 +1909,12 @@ enum nl80211_commands {
+ * that configured the indoor setting, and the indoor operation would be
+ * cleared when the socket is closed.
+ * If set during NAN interface creation, the interface will be destroyed
+- * if the socket is closed just like any other interface. Moreover, only
+- * the netlink socket that created the interface will be allowed to add
+- * and remove functions. NAN notifications will be sent in unicast to that
+- * socket. Without this attribute, any socket can add functions and the
+- * notifications will be sent to the %NL80211_MCGRP_NAN multicast group.
++ * if the socket is closed just like any other interface. Moreover, NAN
++ * notifications will be sent in unicast to that socket. Without this
++ * attribute, the notifications will be sent to the %NL80211_MCGRP_NAN
++ * multicast group.
++ * If set during %NL80211_CMD_ASSOCIATE or %NL80211_CMD_CONNECT the
++ * station will deauthenticate when the socket is closed.
+ *
+ * @NL80211_ATTR_TDLS_INITIATOR: flag attribute indicating the current end is
+ * the TDLS link initiator.
+@@ -1927,15 +2054,93 @@ enum nl80211_commands {
+ * %NL80211_CMD_CHANGE_NAN_CONFIG. Its type is u8 and it can't be 0.
+ * Also, values 1 and 255 are reserved for certification purposes and
+ * should not be used during a normal device operation.
+- * @NL80211_ATTR_NAN_DUAL: NAN dual band operation config (see
+- * &enum nl80211_nan_dual_band_conf). This attribute is used with
+- * %NL80211_CMD_START_NAN and optionally with
+- * %NL80211_CMD_CHANGE_NAN_CONFIG.
++ * @NL80211_ATTR_BANDS: operating bands configuration. This is a u32
++ * bitmask of BIT(NL80211_BAND_*) as described in %enum
++ * nl80211_band. For instance, for NL80211_BAND_2GHZ, bit 0
++ * would be set. This attribute is used with
++ * %NL80211_CMD_START_NAN and %NL80211_CMD_CHANGE_NAN_CONFIG, and
++ * it is optional. If no bands are set, it means don't-care and
++ * the device will decide what to use.
+ * @NL80211_ATTR_NAN_FUNC: a function that can be added to NAN. See
+ * &enum nl80211_nan_func_attributes for description of this nested
+ * attribute.
+ * @NL80211_ATTR_NAN_MATCH: used to report a match. This is a nested attribute.
+ * See &enum nl80211_nan_match_attributes.
++ * @NL80211_ATTR_FILS_KEK: KEK for FILS (Re)Association Request/Response frame
++ * protection.
++ * @NL80211_ATTR_FILS_NONCES: Nonces (part of AAD) for FILS (Re)Association
++ * Request/Response frame protection. This attribute contains the 16 octet
++ * STA Nonce followed by 16 octets of AP Nonce.
++ *
++ * @NL80211_ATTR_MULTICAST_TO_UNICAST_ENABLED: Indicates whether or not multicast
++ * packets should be send out as unicast to all stations (flag attribute).
++ *
++ * @NL80211_ATTR_BSSID: The BSSID of the AP. Note that %NL80211_ATTR_MAC is also
++ * used in various commands/events for specifying the BSSID.
++ *
++ * @NL80211_ATTR_SCHED_SCAN_RELATIVE_RSSI: Relative RSSI threshold by which
++ * other BSSs has to be better or slightly worse than the current
++ * connected BSS so that they get reported to user space.
++ * This will give an opportunity to userspace to consider connecting to
++ * other matching BSSs which have better or slightly worse RSSI than
++ * the current connected BSS by using an offloaded operation to avoid
++ * unnecessary wakeups.