| 
							
							
							
						 |  |  | @@ -1,662 +1,39 @@ | 
		
	
		
			
				|  |  |  |  | --- a/nl80211.h | 
		
	
		
			
				|  |  |  |  | +++ b/nl80211.h | 
		
	
		
			
				|  |  |  |  | @@ -10,7 +10,7 @@ | 
		
	
		
			
				|  |  |  |  |   * Copyright 2008, 2009 Luis R. Rodriguez <lrodriguez@atheros.com> | 
		
	
		
			
				|  |  |  |  |   * Copyright 2008 Jouni Malinen <jouni.malinen@atheros.com> | 
		
	
		
			
				|  |  |  |  |   * Copyright 2008 Colin McCabe <colin@cozybit.com> | 
		
	
		
			
				|  |  |  |  | - * Copyright 2015	Intel Deutschland GmbH | 
		
	
		
			
				|  |  |  |  | + * Copyright 2015-2017	Intel Deutschland GmbH | 
		
	
		
			
				|  |  |  |  | @@ -2153,6 +2153,9 @@ enum nl80211_commands { | 
		
	
		
			
				|  |  |  |  |   * @NL80211_ATTR_PMKR0_NAME: PMK-R0 Name for offloaded FT. | 
		
	
		
			
				|  |  |  |  |   * @NL80211_ATTR_PORT_AUTHORIZED: (reserved) | 
		
	
		
			
				|  |  |  |  |   * | 
		
	
		
			
				|  |  |  |  |   * Permission to use, copy, modify, and/or distribute this software for any | 
		
	
		
			
				|  |  |  |  |   * purpose with or without fee is hereby granted, provided that the above | 
		
	
		
			
				|  |  |  |  | @@ -173,6 +173,65 @@ | 
		
	
		
			
				|  |  |  |  |   */ | 
		
	
		
			
				|  |  |  |  |   | 
		
	
		
			
				|  |  |  |  |  /** | 
		
	
		
			
				|  |  |  |  | + * DOC: WPA/WPA2 EAPOL handshake offload | 
		
	
		
			
				|  |  |  |  | + * | 
		
	
		
			
				|  |  |  |  | + * By setting @NL80211_EXT_FEATURE_4WAY_HANDSHAKE_STA_PSK flag drivers | 
		
	
		
			
				|  |  |  |  | + * can indicate they support offloading EAPOL handshakes for WPA/WPA2 | 
		
	
		
			
				|  |  |  |  | + * preshared key authentication. In %NL80211_CMD_CONNECT the preshared | 
		
	
		
			
				|  |  |  |  | + * key should be specified using %NL80211_ATTR_PMK. Drivers supporting | 
		
	
		
			
				|  |  |  |  | + * this offload may reject the %NL80211_CMD_CONNECT when no preshared | 
		
	
		
			
				|  |  |  |  | + * key material is provided, for example when that driver does not | 
		
	
		
			
				|  |  |  |  | + * support setting the temporal keys through %CMD_NEW_KEY. | 
		
	
		
			
				|  |  |  |  | + * | 
		
	
		
			
				|  |  |  |  | + * Similarly @NL80211_EXT_FEATURE_4WAY_HANDSHAKE_STA_1X flag can be | 
		
	
		
			
				|  |  |  |  | + * set by drivers indicating offload support of the PTK/GTK EAPOL | 
		
	
		
			
				|  |  |  |  | + * handshakes during 802.1X authentication. In order to use the offload | 
		
	
		
			
				|  |  |  |  | + * the %NL80211_CMD_CONNECT should have %NL80211_ATTR_WANT_1X_4WAY_HS | 
		
	
		
			
				|  |  |  |  | + * attribute flag. Drivers supporting this offload may reject the | 
		
	
		
			
				|  |  |  |  | + * %NL80211_CMD_CONNECT when the attribute flag is not present. | 
		
	
		
			
				|  |  |  |  | + * | 
		
	
		
			
				|  |  |  |  | + * For 802.1X the PMK or PMK-R0 are set by providing %NL80211_ATTR_PMK | 
		
	
		
			
				|  |  |  |  | + * using %NL80211_CMD_SET_PMK. For offloaded FT support also | 
		
	
		
			
				|  |  |  |  | + * %NL80211_ATTR_PMKR0_NAME must be provided. | 
		
	
		
			
				|  |  |  |  | + */ | 
		
	
		
			
				|  |  |  |  | + | 
		
	
		
			
				|  |  |  |  | +/** | 
		
	
		
			
				|  |  |  |  | + * DOC: FILS shared key authentication offload | 
		
	
		
			
				|  |  |  |  | + * | 
		
	
		
			
				|  |  |  |  | + * FILS shared key authentication offload can be advertized by drivers by | 
		
	
		
			
				|  |  |  |  | + * setting @NL80211_EXT_FEATURE_FILS_SK_OFFLOAD flag. The drivers that support | 
		
	
		
			
				|  |  |  |  | + * FILS shared key authentication offload should be able to construct the | 
		
	
		
			
				|  |  |  |  | + * authentication and association frames for FILS shared key authentication and | 
		
	
		
			
				|  |  |  |  | + * eventually do a key derivation as per IEEE 802.11ai. The below additional | 
		
	
		
			
				|  |  |  |  | + * parameters should be given to driver in %NL80211_CMD_CONNECT. | 
		
	
		
			
				|  |  |  |  | + *	%NL80211_ATTR_FILS_ERP_USERNAME - used to construct keyname_nai | 
		
	
		
			
				|  |  |  |  | + *	%NL80211_ATTR_FILS_ERP_REALM - used to construct keyname_nai | 
		
	
		
			
				|  |  |  |  | + *	%NL80211_ATTR_FILS_ERP_NEXT_SEQ_NUM - used to construct erp message | 
		
	
		
			
				|  |  |  |  | + *	%NL80211_ATTR_FILS_ERP_RRK - used to generate the rIK and rMSK | 
		
	
		
			
				|  |  |  |  | + * rIK should be used to generate an authentication tag on the ERP message and | 
		
	
		
			
				|  |  |  |  | + * rMSK should be used to derive a PMKSA. | 
		
	
		
			
				|  |  |  |  | + * rIK, rMSK should be generated and keyname_nai, sequence number should be used | 
		
	
		
			
				|  |  |  |  | + * as specified in IETF RFC 6696. | 
		
	
		
			
				|  |  |  |  | + * | 
		
	
		
			
				|  |  |  |  | + * When FILS shared key authentication is completed, driver needs to provide the | 
		
	
		
			
				|  |  |  |  | + * below additional parameters to userspace. | 
		
	
		
			
				|  |  |  |  | + *	%NL80211_ATTR_FILS_KEK - used for key renewal | 
		
	
		
			
				|  |  |  |  | + *	%NL80211_ATTR_FILS_ERP_NEXT_SEQ_NUM - used in further EAP-RP exchanges | 
		
	
		
			
				|  |  |  |  | + *	%NL80211_ATTR_PMKID - used to identify the PMKSA used/generated | 
		
	
		
			
				|  |  |  |  | + *	%Nl80211_ATTR_PMK - used to update PMKSA cache in userspace | 
		
	
		
			
				|  |  |  |  | + * The PMKSA can be maintained in userspace persistently so that it can be used | 
		
	
		
			
				|  |  |  |  | + * later after reboots or wifi turn off/on also. | 
		
	
		
			
				|  |  |  |  | + * | 
		
	
		
			
				|  |  |  |  | + * %NL80211_ATTR_FILS_CACHE_ID is the cache identifier advertized by a FILS | 
		
	
		
			
				|  |  |  |  | + * capable AP supporting PMK caching. It specifies the scope within which the | 
		
	
		
			
				|  |  |  |  | + * PMKSAs are cached in an ESS. %NL80211_CMD_SET_PMKSA and | 
		
	
		
			
				|  |  |  |  | + * %NL80211_CMD_DEL_PMKSA are enhanced to allow support for PMKSA caching based | 
		
	
		
			
				|  |  |  |  | + * on FILS cache identifier. Additionally %NL80211_ATTR_PMK is used with | 
		
	
		
			
				|  |  |  |  | + * %NL80211_SET_PMKSA to specify the PMK corresponding to a PMKSA for driver to | 
		
	
		
			
				|  |  |  |  | + * use in a FILS shared key connection with PMKSA caching. | 
		
	
		
			
				|  |  |  |  | + */ | 
		
	
		
			
				|  |  |  |  | + | 
		
	
		
			
				|  |  |  |  | +/** | 
		
	
		
			
				|  |  |  |  |   * enum nl80211_commands - supported nl80211 commands | 
		
	
		
			
				|  |  |  |  |   * | 
		
	
		
			
				|  |  |  |  |   * @NL80211_CMD_UNSPEC: unspecified command to catch errors | 
		
	
		
			
				|  |  |  |  | @@ -323,7 +382,7 @@ | 
		
	
		
			
				|  |  |  |  |   * @NL80211_CMD_GET_SCAN: get scan results | 
		
	
		
			
				|  |  |  |  |   * @NL80211_CMD_TRIGGER_SCAN: trigger a new scan with the given parameters | 
		
	
		
			
				|  |  |  |  |   *	%NL80211_ATTR_TX_NO_CCK_RATE is used to decide whether to send the | 
		
	
		
			
				|  |  |  |  | - *	probe requests at CCK rate or not. %NL80211_ATTR_MAC can be used to | 
		
	
		
			
				|  |  |  |  | + *	probe requests at CCK rate or not. %NL80211_ATTR_BSSID can be used to | 
		
	
		
			
				|  |  |  |  |   *	specify a BSSID to scan for; if not included, the wildcard BSSID will | 
		
	
		
			
				|  |  |  |  |   *	be used. | 
		
	
		
			
				|  |  |  |  |   * @NL80211_CMD_NEW_SCAN_RESULTS: scan notification (as a reply to | 
		
	
		
			
				|  |  |  |  | @@ -351,7 +410,9 @@ | 
		
	
		
			
				|  |  |  |  |   *	are used.  Extra IEs can also be passed from the userspace by | 
		
	
		
			
				|  |  |  |  |   *	using the %NL80211_ATTR_IE attribute.  The first cycle of the | 
		
	
		
			
				|  |  |  |  |   *	scheduled scan can be delayed by %NL80211_ATTR_SCHED_SCAN_DELAY | 
		
	
		
			
				|  |  |  |  | - *	is supplied. | 
		
	
		
			
				|  |  |  |  | + *	is supplied. If the device supports multiple concurrent scheduled | 
		
	
		
			
				|  |  |  |  | + *	scans, it will allow such when the caller provides the flag attribute | 
		
	
		
			
				|  |  |  |  | + *	%NL80211_ATTR_SCHED_SCAN_MULTI to indicate user-space support for it. | 
		
	
		
			
				|  |  |  |  |   * @NL80211_CMD_STOP_SCHED_SCAN: stop a scheduled scan. Returns -ENOENT if | 
		
	
		
			
				|  |  |  |  |   *	scheduled scan is not running. The caller may assume that as soon | 
		
	
		
			
				|  |  |  |  |   *	as the call returns, it is safe to start a new scheduled scan again. | 
		
	
		
			
				|  |  |  |  | @@ -370,10 +431,18 @@ | 
		
	
		
			
				|  |  |  |  |   * @NL80211_CMD_NEW_SURVEY_RESULTS: survey data notification (as a reply to | 
		
	
		
			
				|  |  |  |  |   *	NL80211_CMD_GET_SURVEY and on the "scan" multicast group) | 
		
	
		
			
				|  |  |  |  |   * | 
		
	
		
			
				|  |  |  |  | - * @NL80211_CMD_SET_PMKSA: Add a PMKSA cache entry, using %NL80211_ATTR_MAC | 
		
	
		
			
				|  |  |  |  | - *	(for the BSSID) and %NL80211_ATTR_PMKID. | 
		
	
		
			
				|  |  |  |  | + * @NL80211_CMD_SET_PMKSA: Add a PMKSA cache entry using %NL80211_ATTR_MAC | 
		
	
		
			
				|  |  |  |  | + *	(for the BSSID), %NL80211_ATTR_PMKID, and optionally %NL80211_ATTR_PMK | 
		
	
		
			
				|  |  |  |  | + *	(PMK is used for PTKSA derivation in case of FILS shared key offload) or | 
		
	
		
			
				|  |  |  |  | + *	using %NL80211_ATTR_SSID, %NL80211_ATTR_FILS_CACHE_ID, | 
		
	
		
			
				|  |  |  |  | + *	%NL80211_ATTR_PMKID, and %NL80211_ATTR_PMK in case of FILS | 
		
	
		
			
				|  |  |  |  | + *	authentication where %NL80211_ATTR_FILS_CACHE_ID is the identifier | 
		
	
		
			
				|  |  |  |  | + *	advertized by a FILS capable AP identifying the scope of PMKSA in an | 
		
	
		
			
				|  |  |  |  | + *	ESS. | 
		
	
		
			
				|  |  |  |  |   * @NL80211_CMD_DEL_PMKSA: Delete a PMKSA cache entry, using %NL80211_ATTR_MAC | 
		
	
		
			
				|  |  |  |  | - *	(for the BSSID) and %NL80211_ATTR_PMKID. | 
		
	
		
			
				|  |  |  |  | + *	(for the BSSID) and %NL80211_ATTR_PMKID or using %NL80211_ATTR_SSID, | 
		
	
		
			
				|  |  |  |  | + *	%NL80211_ATTR_FILS_CACHE_ID, and %NL80211_ATTR_PMKID in case of FILS | 
		
	
		
			
				|  |  |  |  | + *	authentication. | 
		
	
		
			
				|  |  |  |  |   * @NL80211_CMD_FLUSH_PMKSA: Flush all PMKSA cache entries. | 
		
	
		
			
				|  |  |  |  |   * | 
		
	
		
			
				|  |  |  |  |   * @NL80211_CMD_REG_CHANGE: indicates to userspace the regulatory domain | 
		
	
		
			
				|  |  |  |  | @@ -500,8 +569,13 @@ | 
		
	
		
			
				|  |  |  |  |   *	authentication/association or not receiving a response from the AP. | 
		
	
		
			
				|  |  |  |  |   *	Non-zero %NL80211_ATTR_STATUS_CODE value is indicated in that case as | 
		
	
		
			
				|  |  |  |  |   *	well to remain backwards compatible. | 
		
	
		
			
				|  |  |  |  | - * @NL80211_CMD_ROAM: request that the card roam (currently not implemented), | 
		
	
		
			
				|  |  |  |  | - *	sent as an event when the card/driver roamed by itself. | 
		
	
		
			
				|  |  |  |  | + * @NL80211_CMD_ROAM: notifcation indicating the card/driver roamed by itself. | 
		
	
		
			
				|  |  |  |  | + *	When the driver roamed in a network that requires 802.1X authentication, | 
		
	
		
			
				|  |  |  |  | + *	%NL80211_ATTR_PORT_AUTHORIZED should be set if the 802.1X authentication | 
		
	
		
			
				|  |  |  |  | + *	was done by the driver or if roaming was done using Fast Transition | 
		
	
		
			
				|  |  |  |  | + *	protocol (in which case 802.1X authentication is not needed). If | 
		
	
		
			
				|  |  |  |  | + *	%NL80211_ATTR_PORT_AUTHORIZED is not set, user space is responsible for | 
		
	
		
			
				|  |  |  |  | + *	the 802.1X authentication. | 
		
	
		
			
				|  |  |  |  |   * @NL80211_CMD_DISCONNECT: drop a given connection; also used to notify | 
		
	
		
			
				|  |  |  |  |   *	userspace that a connection was dropped by the AP or due to other | 
		
	
		
			
				|  |  |  |  |   *	reasons, for this the %NL80211_ATTR_DISCONNECTED_BY_AP and | 
		
	
		
			
				|  |  |  |  | @@ -600,6 +674,20 @@ | 
		
	
		
			
				|  |  |  |  |   * | 
		
	
		
			
				|  |  |  |  |   * @NL80211_CMD_SET_WDS_PEER: Set the MAC address of the peer on a WDS interface. | 
		
	
		
			
				|  |  |  |  |   * | 
		
	
		
			
				|  |  |  |  | + * @NL80211_CMD_SET_MULTICAST_TO_UNICAST: Configure if this AP should perform | 
		
	
		
			
				|  |  |  |  | + *	multicast to unicast conversion. When enabled, all multicast packets | 
		
	
		
			
				|  |  |  |  | + *	with ethertype ARP, IPv4 or IPv6 (possibly within an 802.1Q header) | 
		
	
		
			
				|  |  |  |  | + *	will be sent out to each station once with the destination (multicast) | 
		
	
		
			
				|  |  |  |  | + *	MAC address replaced by the station's MAC address. Note that this may | 
		
	
		
			
				|  |  |  |  | + *	break certain expectations of the receiver, e.g. the ability to drop | 
		
	
		
			
				|  |  |  |  | + *	unicast IP packets encapsulated in multicast L2 frames, or the ability | 
		
	
		
			
				|  |  |  |  | + *	to not send destination unreachable messages in such cases. | 
		
	
		
			
				|  |  |  |  | + *	This can only be toggled per BSS. Configure this on an interface of | 
		
	
		
			
				|  |  |  |  | + *	type %NL80211_IFTYPE_AP. It applies to all its VLAN interfaces | 
		
	
		
			
				|  |  |  |  | + *	(%NL80211_IFTYPE_AP_VLAN), except for those in 4addr (WDS) mode. | 
		
	
		
			
				|  |  |  |  | + *	If %NL80211_ATTR_MULTICAST_TO_UNICAST_ENABLED is not present with this | 
		
	
		
			
				|  |  |  |  | + *	command, the feature is disabled. | 
		
	
		
			
				|  |  |  |  | + * | 
		
	
		
			
				|  |  |  |  |   * @NL80211_CMD_JOIN_MESH: Join a mesh. The mesh ID must be given, and initial | 
		
	
		
			
				|  |  |  |  |   *	mesh config parameters may be given. | 
		
	
		
			
				|  |  |  |  |   * @NL80211_CMD_LEAVE_MESH: Leave the mesh network -- no special arguments, the | 
		
	
		
			
				|  |  |  |  | @@ -840,12 +928,15 @@ | 
		
	
		
			
				|  |  |  |  |   *	cfg80211_scan_done(). | 
		
	
		
			
				|  |  |  |  |   * | 
		
	
		
			
				|  |  |  |  |   * @NL80211_CMD_START_NAN: Start NAN operation, identified by its | 
		
	
		
			
				|  |  |  |  | - *	%NL80211_ATTR_WDEV interface. This interface must have been previously | 
		
	
		
			
				|  |  |  |  | - *	created with %NL80211_CMD_NEW_INTERFACE. After it has been started, the | 
		
	
		
			
				|  |  |  |  | - *	NAN interface will create or join a cluster. This command must have a | 
		
	
		
			
				|  |  |  |  | - *	valid %NL80211_ATTR_NAN_MASTER_PREF attribute and optional | 
		
	
		
			
				|  |  |  |  | - *	%NL80211_ATTR_NAN_DUAL attributes. | 
		
	
		
			
				|  |  |  |  | - *	After this command NAN functions can be added. | 
		
	
		
			
				|  |  |  |  | + *	%NL80211_ATTR_WDEV interface. This interface must have been | 
		
	
		
			
				|  |  |  |  | + *	previously created with %NL80211_CMD_NEW_INTERFACE. After it | 
		
	
		
			
				|  |  |  |  | + *	has been started, the NAN interface will create or join a | 
		
	
		
			
				|  |  |  |  | + *	cluster. This command must have a valid | 
		
	
		
			
				|  |  |  |  | + *	%NL80211_ATTR_NAN_MASTER_PREF attribute and optional | 
		
	
		
			
				|  |  |  |  | + *	%NL80211_ATTR_BANDS attributes.  If %NL80211_ATTR_BANDS is | 
		
	
		
			
				|  |  |  |  | + *	omitted or set to 0, it means don't-care and the device will | 
		
	
		
			
				|  |  |  |  | + *	decide what to use.  After this command NAN functions can be | 
		
	
		
			
				|  |  |  |  | + *	added. | 
		
	
		
			
				|  |  |  |  |   * @NL80211_CMD_STOP_NAN: Stop the NAN operation, identified by | 
		
	
		
			
				|  |  |  |  |   *	its %NL80211_ATTR_WDEV interface. | 
		
	
		
			
				|  |  |  |  |   * @NL80211_CMD_ADD_NAN_FUNCTION: Add a NAN function. The function is defined | 
		
	
		
			
				|  |  |  |  | @@ -866,14 +957,32 @@ | 
		
	
		
			
				|  |  |  |  |   *	This command is also used as a notification sent when a NAN function is | 
		
	
		
			
				|  |  |  |  |   *	terminated. This will contain a %NL80211_ATTR_NAN_FUNC_INST_ID | 
		
	
		
			
				|  |  |  |  |   *	and %NL80211_ATTR_COOKIE attributes. | 
		
	
		
			
				|  |  |  |  | - * @NL80211_CMD_CHANGE_NAN_CONFIG: Change current NAN configuration. NAN | 
		
	
		
			
				|  |  |  |  | - *	must be operational (%NL80211_CMD_START_NAN was executed). | 
		
	
		
			
				|  |  |  |  | - *	It must contain at least one of the following attributes: | 
		
	
		
			
				|  |  |  |  | - *	%NL80211_ATTR_NAN_MASTER_PREF, %NL80211_ATTR_NAN_DUAL. | 
		
	
		
			
				|  |  |  |  | + * @NL80211_CMD_CHANGE_NAN_CONFIG: Change current NAN | 
		
	
		
			
				|  |  |  |  | + *	configuration. NAN must be operational (%NL80211_CMD_START_NAN | 
		
	
		
			
				|  |  |  |  | + *	was executed).  It must contain at least one of the following | 
		
	
		
			
				|  |  |  |  | + *	attributes: %NL80211_ATTR_NAN_MASTER_PREF, | 
		
	
		
			
				|  |  |  |  | + *	%NL80211_ATTR_BANDS.  If %NL80211_ATTR_BANDS is omitted, the | 
		
	
		
			
				|  |  |  |  | + *	current configuration is not changed.  If it is present but | 
		
	
		
			
				|  |  |  |  | + *	set to zero, the configuration is changed to don't-care | 
		
	
		
			
				|  |  |  |  | + *	(i.e. the device can decide what to do). | 
		
	
		
			
				|  |  |  |  |   * @NL80211_CMD_NAN_FUNC_MATCH: Notification sent when a match is reported. | 
		
	
		
			
				|  |  |  |  |   *	This will contain a %NL80211_ATTR_NAN_MATCH nested attribute and | 
		
	
		
			
				|  |  |  |  |   *	%NL80211_ATTR_COOKIE. | 
		
	
		
			
				|  |  |  |  |   * | 
		
	
		
			
				|  |  |  |  | + * @NL80211_CMD_UPDATE_CONNECT_PARAMS: Update one or more connect parameters | 
		
	
		
			
				|  |  |  |  | + *	for subsequent roaming cases if the driver or firmware uses internal | 
		
	
		
			
				|  |  |  |  | + *	BSS selection. This command can be issued only while connected and it | 
		
	
		
			
				|  |  |  |  | + *	does not result in a change for the current association. Currently, | 
		
	
		
			
				|  |  |  |  | + *	only the %NL80211_ATTR_IE data is used and updated with this command. | 
		
	
		
			
				|  |  |  |  | + * | 
		
	
		
			
				|  |  |  |  | + * @NL80211_CMD_SET_PMK: For offloaded 4-Way handshake, set the PMK or PMK-R0 | 
		
	
		
			
				|  |  |  |  | + *	for the given authenticator address (specified with &NL80211_ATTR_MAC). | 
		
	
		
			
				|  |  |  |  | + *	When &NL80211_ATTR_PMKR0_NAME is set, &NL80211_ATTR_PMK specifies the | 
		
	
		
			
				|  |  |  |  | + *	PMK-R0, otherwise it specifies the PMK. | 
		
	
		
			
				|  |  |  |  | + * @NL80211_CMD_DEL_PMK: For offloaded 4-Way handshake, delete the previously | 
		
	
		
			
				|  |  |  |  | + *	configured PMK for the authenticator address identified by | 
		
	
		
			
				|  |  |  |  | + *	&NL80211_ATTR_MAC. | 
		
	
		
			
				|  |  |  |  | + * | 
		
	
		
			
				|  |  |  |  |   * @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. | 
		
	
		
			
				|  |  |  |  | + * | 
		
	
		
			
				|  |  |  |  | + * @NL80211_ATTR_SCHED_SCAN_RSSI_ADJUST: When present the RSSI level for BSSs in | 
		
	
		
			
				|  |  |  |  | + *	the specified band is to be adjusted before doing | 
		
	
		
			
				|  |  |  |  | + *	%NL80211_ATTR_SCHED_SCAN_RELATIVE_RSSI based comparision to figure out | 
		
	
		
			
				|  |  |  |  | + *	better BSSs. The attribute value is a packed structure | 
		
	
		
			
				|  |  |  |  | + *	value as specified by &struct nl80211_bss_select_rssi_adjust. | 
		
	
		
			
				|  |  |  |  | + * | 
		
	
		
			
				|  |  |  |  | + * @NL80211_ATTR_TIMEOUT_REASON: The reason for which an operation timed out. | 
		
	
		
			
				|  |  |  |  | + *	u32 attribute with an &enum nl80211_timeout_reason value. This is used, | 
		
	
		
			
				|  |  |  |  | + *	e.g., with %NL80211_CMD_CONNECT event. | 
		
	
		
			
				|  |  |  |  | + * | 
		
	
		
			
				|  |  |  |  | + * @NL80211_ATTR_FILS_ERP_USERNAME: EAP Re-authentication Protocol (ERP) | 
		
	
		
			
				|  |  |  |  | + *	username part of NAI used to refer keys rRK and rIK. This is used with | 
		
	
		
			
				|  |  |  |  | + *	%NL80211_CMD_CONNECT. | 
		
	
		
			
				|  |  |  |  | + * | 
		
	
		
			
				|  |  |  |  | + * @NL80211_ATTR_FILS_ERP_REALM: EAP Re-authentication Protocol (ERP) realm part | 
		
	
		
			
				|  |  |  |  | + *	of NAI specifying the domain name of the ER server. This is used with | 
		
	
		
			
				|  |  |  |  | + *	%NL80211_CMD_CONNECT. | 
		
	
		
			
				|  |  |  |  | + * | 
		
	
		
			
				|  |  |  |  | + * @NL80211_ATTR_FILS_ERP_NEXT_SEQ_NUM: Unsigned 16-bit ERP next sequence number | 
		
	
		
			
				|  |  |  |  | + *	to use in ERP messages. This is used in generating the FILS wrapped data | 
		
	
		
			
				|  |  |  |  | + *	for FILS authentication and is used with %NL80211_CMD_CONNECT. | 
		
	
		
			
				|  |  |  |  | + * | 
		
	
		
			
				|  |  |  |  | + * @NL80211_ATTR_FILS_ERP_RRK: ERP re-authentication Root Key (rRK) for the | 
		
	
		
			
				|  |  |  |  | + *	NAI specified by %NL80211_ATTR_FILS_ERP_USERNAME and | 
		
	
		
			
				|  |  |  |  | + *	%NL80211_ATTR_FILS_ERP_REALM. This is used for generating rIK and rMSK | 
		
	
		
			
				|  |  |  |  | + *	from successful FILS authentication and is used with | 
		
	
		
			
				|  |  |  |  | + *	%NL80211_CMD_CONNECT. | 
		
	
		
			
				|  |  |  |  | + * | 
		
	
		
			
				|  |  |  |  | + * @NL80211_ATTR_FILS_CACHE_ID: A 2-octet identifier advertized by a FILS AP | 
		
	
		
			
				|  |  |  |  | + *	identifying the scope of PMKSAs. This is used with | 
		
	
		
			
				|  |  |  |  | + *	@NL80211_CMD_SET_PMKSA and @NL80211_CMD_DEL_PMKSA. | 
		
	
		
			
				|  |  |  |  | + * | 
		
	
		
			
				|  |  |  |  | + * @NL80211_ATTR_PMK: attribute for passing PMK key material. Used with | 
		
	
		
			
				|  |  |  |  | + *	%NL80211_CMD_SET_PMKSA for the PMKSA identified by %NL80211_ATTR_PMKID. | 
		
	
		
			
				|  |  |  |  | + *	For %NL80211_CMD_CONNECT it is used to provide PSK for offloading 4-way | 
		
	
		
			
				|  |  |  |  | + *	handshake for WPA/WPA2-PSK networks. For 802.1X authentication it is | 
		
	
		
			
				|  |  |  |  | + *	used with %NL80211_CMD_SET_PMK. For offloaded FT support this attribute | 
		
	
		
			
				|  |  |  |  | + *	specifies the PMK-R0 if NL80211_ATTR_PMKR0_NAME is included as well. | 
		
	
		
			
				|  |  |  |  | + * | 
		
	
		
			
				|  |  |  |  | + * @NL80211_ATTR_SCHED_SCAN_MULTI: flag attribute which user-space shall use to | 
		
	
		
			
				|  |  |  |  | + *	indicate that it supports multiple active scheduled scan requests. | 
		
	
		
			
				|  |  |  |  | + * @NL80211_ATTR_SCHED_SCAN_MAX_REQS: indicates maximum number of scheduled | 
		
	
		
			
				|  |  |  |  | + *	scan request that may be active for the device (u32). | 
		
	
		
			
				|  |  |  |  | + * | 
		
	
		
			
				|  |  |  |  | + * @NL80211_ATTR_WANT_1X_4WAY_HS: flag attribute which user-space can include | 
		
	
		
			
				|  |  |  |  | + *	in %NL80211_CMD_CONNECT to indicate that for 802.1X authentication it | 
		
	
		
			
				|  |  |  |  | + *	wants to use the supported offload of the 4-way handshake. | 
		
	
		
			
				|  |  |  |  | + * @NL80211_ATTR_PMKR0_NAME: PMK-R0 Name for offloaded FT. | 
		
	
		
			
				|  |  |  |  | + * @NL80211_ATTR_PORT_AUTHORIZED: flag attribute used in %NL80211_CMD_ROAMED | 
		
	
		
			
				|  |  |  |  | + *	notification indicating that that 802.1X authentication was done by | 
		
	
		
			
				|  |  |  |  | + *	the driver or is not needed (because roaming used the Fast Transition | 
		
	
		
			
				|  |  |  |  | + *	protocol). | 
		
	
		
			
				|  |  |  |  | + * | 
		
	
		
			
				|  |  |  |  | + * @NL80211_ATTR_WIPHY_ANTENNA_GAIN: Configured antenna gain. Used to reduce | 
		
	
		
			
				|  |  |  |  | + *	transmit power to stay within regulatory limits. u32, dBi. | 
		
	
		
			
				|  |  |  |  |   * | 
		
	
		
			
				|  |  |  |  | + * | 
		
	
		
			
				|  |  |  |  |   * @NUM_NL80211_ATTR: total number of nl80211_attrs available | 
		
	
		
			
				|  |  |  |  |   * @NL80211_ATTR_MAX: highest attribute number currently defined | 
		
	
		
			
				|  |  |  |  | @@ -2195,7 +2400,7 @@ enum nl80211_attrs { | 
		
	
		
			
				|  |  |  |  |   * @__NL80211_ATTR_AFTER_LAST: internal use | 
		
	
		
			
				|  |  |  |  | @@ -2579,6 +2582,8 @@ enum nl80211_attrs { | 
		
	
		
			
				|  |  |  |  |  	NL80211_ATTR_PMKR0_NAME, | 
		
	
		
			
				|  |  |  |  |  	NL80211_ATTR_PORT_AUTHORIZED, | 
		
	
		
			
				|  |  |  |  |   | 
		
	
		
			
				|  |  |  |  |  	NL80211_ATTR_CONN_FAILED_REASON, | 
		
	
		
			
				|  |  |  |  |   | 
		
	
		
			
				|  |  |  |  | -	NL80211_ATTR_SAE_DATA, | 
		
	
		
			
				|  |  |  |  | +	NL80211_ATTR_AUTH_DATA, | 
		
	
		
			
				|  |  |  |  |   | 
		
	
		
			
				|  |  |  |  |  	NL80211_ATTR_VHT_CAPABILITY, | 
		
	
		
			
				|  |  |  |  |   | 
		
	
		
			
				|  |  |  |  | @@ -2332,10 +2537,39 @@ enum nl80211_attrs { | 
		
	
		
			
				|  |  |  |  |  	NL80211_ATTR_MESH_PEER_AID, | 
		
	
		
			
				|  |  |  |  |   | 
		
	
		
			
				|  |  |  |  |  	NL80211_ATTR_NAN_MASTER_PREF, | 
		
	
		
			
				|  |  |  |  | -	NL80211_ATTR_NAN_DUAL, | 
		
	
		
			
				|  |  |  |  | +	NL80211_ATTR_BANDS, | 
		
	
		
			
				|  |  |  |  |  	NL80211_ATTR_NAN_FUNC, | 
		
	
		
			
				|  |  |  |  |  	NL80211_ATTR_NAN_MATCH, | 
		
	
		
			
				|  |  |  |  |   | 
		
	
		
			
				|  |  |  |  | +	NL80211_ATTR_FILS_KEK, | 
		
	
		
			
				|  |  |  |  | +	NL80211_ATTR_FILS_NONCES, | 
		
	
		
			
				|  |  |  |  | + | 
		
	
		
			
				|  |  |  |  | +	NL80211_ATTR_MULTICAST_TO_UNICAST_ENABLED, | 
		
	
		
			
				|  |  |  |  | + | 
		
	
		
			
				|  |  |  |  | +	NL80211_ATTR_BSSID, | 
		
	
		
			
				|  |  |  |  | + | 
		
	
		
			
				|  |  |  |  | +	NL80211_ATTR_SCHED_SCAN_RELATIVE_RSSI, | 
		
	
		
			
				|  |  |  |  | +	NL80211_ATTR_SCHED_SCAN_RSSI_ADJUST, | 
		
	
		
			
				|  |  |  |  | + | 
		
	
		
			
				|  |  |  |  | +	NL80211_ATTR_TIMEOUT_REASON, | 
		
	
		
			
				|  |  |  |  | + | 
		
	
		
			
				|  |  |  |  | +	NL80211_ATTR_FILS_ERP_USERNAME, | 
		
	
		
			
				|  |  |  |  | +	NL80211_ATTR_FILS_ERP_REALM, | 
		
	
		
			
				|  |  |  |  | +	NL80211_ATTR_FILS_ERP_NEXT_SEQ_NUM, | 
		
	
		
			
				|  |  |  |  | +	NL80211_ATTR_FILS_ERP_RRK, | 
		
	
		
			
				|  |  |  |  | +	NL80211_ATTR_FILS_CACHE_ID, | 
		
	
		
			
				|  |  |  |  | + | 
		
	
		
			
				|  |  |  |  | +	NL80211_ATTR_PMK, | 
		
	
		
			
				|  |  |  |  | + | 
		
	
		
			
				|  |  |  |  | +	NL80211_ATTR_SCHED_SCAN_MULTI, | 
		
	
		
			
				|  |  |  |  | +	NL80211_ATTR_SCHED_SCAN_MAX_REQS, | 
		
	
		
			
				|  |  |  |  | + | 
		
	
		
			
				|  |  |  |  | +	NL80211_ATTR_WANT_1X_4WAY_HS, | 
		
	
		
			
				|  |  |  |  | +	NL80211_ATTR_PMKR0_NAME, | 
		
	
		
			
				|  |  |  |  | +	NL80211_ATTR_PORT_AUTHORIZED, | 
		
	
		
			
				|  |  |  |  | + | 
		
	
		
			
				|  |  |  |  | +	NL80211_ATTR_WIPHY_ANTENNA_GAIN, | 
		
	
		
			
				|  |  |  |  | + | 
		
	
		
			
				|  |  |  |  |  	/* add attributes here, update the policy in nl80211.c */ | 
		
	
		
			
				|  |  |  |  |   | 
		
	
		
			
				|  |  |  |  |  	__NL80211_ATTR_AFTER_LAST, | 
		
	
		
			
				|  |  |  |  | @@ -2347,6 +2581,7 @@ enum nl80211_attrs { | 
		
	
		
			
				|  |  |  |  |  #define NL80211_ATTR_SCAN_GENERATION NL80211_ATTR_GENERATION | 
		
	
		
			
				|  |  |  |  |  #define	NL80211_ATTR_MESH_PARAMS NL80211_ATTR_MESH_CONFIG | 
		
	
		
			
				|  |  |  |  |  #define NL80211_ATTR_IFACE_SOCKET_OWNER NL80211_ATTR_SOCKET_OWNER | 
		
	
		
			
				|  |  |  |  | +#define NL80211_ATTR_SAE_DATA NL80211_ATTR_AUTH_DATA | 
		
	
		
			
				|  |  |  |  |   | 
		
	
		
			
				|  |  |  |  |  /* | 
		
	
		
			
				|  |  |  |  |   * Allow user space programs to use #ifdef on new attributes by defining them | 
		
	
		
			
				|  |  |  |  | @@ -3019,6 +3254,7 @@ enum nl80211_reg_rule_attr { | 
		
	
		
			
				|  |  |  |  |   * @__NL80211_SCHED_SCAN_MATCH_ATTR_INVALID: attribute number 0 is reserved | 
		
	
		
			
				|  |  |  |  |   * @NL80211_SCHED_SCAN_MATCH_ATTR_SSID: SSID to be used for matching, | 
		
	
		
			
				|  |  |  |  |   *	only report BSS with matching SSID. | 
		
	
		
			
				|  |  |  |  | + *	(This cannot be used together with BSSID.) | 
		
	
		
			
				|  |  |  |  |   * @NL80211_SCHED_SCAN_MATCH_ATTR_RSSI: RSSI threshold (in dBm) for reporting a | 
		
	
		
			
				|  |  |  |  |   *	BSS in scan results. Filtering is turned off if not specified. Note that | 
		
	
		
			
				|  |  |  |  |   *	if this attribute is in a match set of its own, then it is treated as | 
		
	
		
			
				|  |  |  |  | @@ -3027,6 +3263,15 @@ enum nl80211_reg_rule_attr { | 
		
	
		
			
				|  |  |  |  |   *	how this API was implemented in the past. Also, due to the same problem, | 
		
	
		
			
				|  |  |  |  |   *	the only way to create a matchset with only an RSSI filter (with this | 
		
	
		
			
				|  |  |  |  |   *	attribute) is if there's only a single matchset with the RSSI attribute. | 
		
	
		
			
				|  |  |  |  | + * @NL80211_SCHED_SCAN_MATCH_ATTR_RELATIVE_RSSI: Flag indicating whether | 
		
	
		
			
				|  |  |  |  | + *	%NL80211_SCHED_SCAN_MATCH_ATTR_RSSI to be used as absolute RSSI or | 
		
	
		
			
				|  |  |  |  | + *	relative to current bss's RSSI. | 
		
	
		
			
				|  |  |  |  | + * @NL80211_SCHED_SCAN_MATCH_ATTR_RSSI_ADJUST: When present the RSSI level for | 
		
	
		
			
				|  |  |  |  | + *	BSS-es in the specified band is to be adjusted before doing | 
		
	
		
			
				|  |  |  |  | + *	RSSI-based BSS selection. The attribute value is a packed structure | 
		
	
		
			
				|  |  |  |  | + *	value as specified by &struct nl80211_bss_select_rssi_adjust. | 
		
	
		
			
				|  |  |  |  | + * @NL80211_SCHED_SCAN_MATCH_ATTR_BSSID: BSSID to be used for matching | 
		
	
		
			
				|  |  |  |  | + *	(this cannot be used together with SSID). | 
		
	
		
			
				|  |  |  |  |   * @NL80211_SCHED_SCAN_MATCH_ATTR_MAX: highest scheduled scan filter | 
		
	
		
			
				|  |  |  |  |   *	attribute number currently defined | 
		
	
		
			
				|  |  |  |  |   * @__NL80211_SCHED_SCAN_MATCH_ATTR_AFTER_LAST: internal use | 
		
	
		
			
				|  |  |  |  | @@ -3036,6 +3281,9 @@ enum nl80211_sched_scan_match_attr { | 
		
	
		
			
				|  |  |  |  |   | 
		
	
		
			
				|  |  |  |  |  	NL80211_SCHED_SCAN_MATCH_ATTR_SSID, | 
		
	
		
			
				|  |  |  |  |  	NL80211_SCHED_SCAN_MATCH_ATTR_RSSI, | 
		
	
		
			
				|  |  |  |  | +	NL80211_SCHED_SCAN_MATCH_ATTR_RELATIVE_RSSI, | 
		
	
		
			
				|  |  |  |  | +	NL80211_SCHED_SCAN_MATCH_ATTR_RSSI_ADJUST, | 
		
	
		
			
				|  |  |  |  | +	NL80211_SCHED_SCAN_MATCH_ATTR_BSSID, | 
		
	
		
			
				|  |  |  |  |   | 
		
	
		
			
				|  |  |  |  |  	/* keep last */ | 
		
	
		
			
				|  |  |  |  |  	__NL80211_SCHED_SCAN_MATCH_ATTR_AFTER_LAST, | 
		
	
		
			
				|  |  |  |  | @@ -3660,6 +3908,9 @@ enum nl80211_bss_status { | 
		
	
		
			
				|  |  |  |  |   * @NL80211_AUTHTYPE_FT: Fast BSS Transition (IEEE 802.11r) | 
		
	
		
			
				|  |  |  |  |   * @NL80211_AUTHTYPE_NETWORK_EAP: Network EAP (some Cisco APs and mainly LEAP) | 
		
	
		
			
				|  |  |  |  |   * @NL80211_AUTHTYPE_SAE: Simultaneous authentication of equals | 
		
	
		
			
				|  |  |  |  | + * @NL80211_AUTHTYPE_FILS_SK: Fast Initial Link Setup shared key | 
		
	
		
			
				|  |  |  |  | + * @NL80211_AUTHTYPE_FILS_SK_PFS: Fast Initial Link Setup shared key with PFS | 
		
	
		
			
				|  |  |  |  | + * @NL80211_AUTHTYPE_FILS_PK: Fast Initial Link Setup public key | 
		
	
		
			
				|  |  |  |  |   * @__NL80211_AUTHTYPE_NUM: internal | 
		
	
		
			
				|  |  |  |  |   * @NL80211_AUTHTYPE_MAX: maximum valid auth algorithm | 
		
	
		
			
				|  |  |  |  |   * @NL80211_AUTHTYPE_AUTOMATIC: determine automatically (if necessary by | 
		
	
		
			
				|  |  |  |  | @@ -3672,6 +3923,9 @@ enum nl80211_auth_type { | 
		
	
		
			
				|  |  |  |  |  	NL80211_AUTHTYPE_FT, | 
		
	
		
			
				|  |  |  |  |  	NL80211_AUTHTYPE_NETWORK_EAP, | 
		
	
		
			
				|  |  |  |  |  	NL80211_AUTHTYPE_SAE, | 
		
	
		
			
				|  |  |  |  | +	NL80211_AUTHTYPE_FILS_SK, | 
		
	
		
			
				|  |  |  |  | +	NL80211_AUTHTYPE_FILS_SK_PFS, | 
		
	
		
			
				|  |  |  |  | +	NL80211_AUTHTYPE_FILS_PK, | 
		
	
		
			
				|  |  |  |  |   | 
		
	
		
			
				|  |  |  |  |  	/* keep last */ | 
		
	
		
			
				|  |  |  |  |  	__NL80211_AUTHTYPE_NUM, | 
		
	
		
			
				|  |  |  |  | @@ -3839,7 +4093,10 @@ enum nl80211_ps_state { | 
		
	
		
			
				|  |  |  |  |   * @__NL80211_ATTR_CQM_INVALID: invalid | 
		
	
		
			
				|  |  |  |  |   * @NL80211_ATTR_CQM_RSSI_THOLD: RSSI threshold in dBm. This value specifies | 
		
	
		
			
				|  |  |  |  |   *	the threshold for the RSSI level at which an event will be sent. Zero | 
		
	
		
			
				|  |  |  |  | - *	to disable. | 
		
	
		
			
				|  |  |  |  | + *	to disable.  Alternatively, if %NL80211_EXT_FEATURE_CQM_RSSI_LIST is | 
		
	
		
			
				|  |  |  |  | + *	set, multiple values can be supplied as a low-to-high sorted array of | 
		
	
		
			
				|  |  |  |  | + *	threshold values in dBm.  Events will be sent when the RSSI value | 
		
	
		
			
				|  |  |  |  | + *	crosses any of the thresholds. | 
		
	
		
			
				|  |  |  |  |   * @NL80211_ATTR_CQM_RSSI_HYST: RSSI hysteresis in dBm. This value specifies | 
		
	
		
			
				|  |  |  |  |   *	the minimum amount the RSSI level must change after an event before a | 
		
	
		
			
				|  |  |  |  |   *	new event may be issued (to reduce effects of RSSI oscillation). | 
		
	
		
			
				|  |  |  |  | @@ -3859,6 +4116,8 @@ enum nl80211_ps_state { | 
		
	
		
			
				|  |  |  |  |   *	%NL80211_CMD_NOTIFY_CQM. Set to 0 to turn off TX error reporting. | 
		
	
		
			
				|  |  |  |  |   * @NL80211_ATTR_CQM_BEACON_LOSS_EVENT: flag attribute that's set in a beacon | 
		
	
		
			
				|  |  |  |  |   *	loss event | 
		
	
		
			
				|  |  |  |  | + * @NL80211_ATTR_CQM_RSSI_LEVEL: the RSSI value in dBm that triggered the | 
		
	
		
			
				|  |  |  |  | + *	RSSI threshold event. | 
		
	
		
			
				|  |  |  |  |   * @__NL80211_ATTR_CQM_AFTER_LAST: internal | 
		
	
		
			
				|  |  |  |  |   * @NL80211_ATTR_CQM_MAX: highest key attribute | 
		
	
		
			
				|  |  |  |  | @@ -3862,9 +3867,6 @@ enum nl80211_bss_scan_width { | 
		
	
		
			
				|  |  |  |  |   *	@NL80211_BSS_PARENT_BSSID. (u64). | 
		
	
		
			
				|  |  |  |  |   * @NL80211_BSS_PARENT_BSSID: the BSS according to which @NL80211_BSS_PARENT_TSF | 
		
	
		
			
				|  |  |  |  |   *	is set. | 
		
	
		
			
				|  |  |  |  | - * @NL80211_BSS_CHAIN_SIGNAL: per-chain signal strength of last BSS update. | 
		
	
		
			
				|  |  |  |  | - *	Contains a nested array of signal strength attributes (u8, dBm), | 
		
	
		
			
				|  |  |  |  | - *	using the nesting index as the antenna number. | 
		
	
		
			
				|  |  |  |  |   * @__NL80211_BSS_AFTER_LAST: internal | 
		
	
		
			
				|  |  |  |  |   * @NL80211_BSS_MAX: highest BSS attribute | 
		
	
		
			
				|  |  |  |  |   */ | 
		
	
		
			
				|  |  |  |  | @@ -3872,6 +4131,7 @@ enum nl80211_attr_cqm { | 
		
	
		
			
				|  |  |  |  |  	NL80211_ATTR_CQM_TXE_PKTS, | 
		
	
		
			
				|  |  |  |  |  	NL80211_ATTR_CQM_TXE_INTVL, | 
		
	
		
			
				|  |  |  |  |  	NL80211_ATTR_CQM_BEACON_LOSS_EVENT, | 
		
	
		
			
				|  |  |  |  | +	NL80211_ATTR_CQM_RSSI_LEVEL, | 
		
	
		
			
				|  |  |  |  | @@ -3888,7 +3890,6 @@ enum nl80211_bss { | 
		
	
		
			
				|  |  |  |  |  	NL80211_BSS_PAD, | 
		
	
		
			
				|  |  |  |  |  	NL80211_BSS_PARENT_TSF, | 
		
	
		
			
				|  |  |  |  |  	NL80211_BSS_PARENT_BSSID, | 
		
	
		
			
				|  |  |  |  | -	NL80211_BSS_CHAIN_SIGNAL, | 
		
	
		
			
				|  |  |  |  |   | 
		
	
		
			
				|  |  |  |  |  	/* keep last */ | 
		
	
		
			
				|  |  |  |  |  	__NL80211_ATTR_CQM_AFTER_LAST, | 
		
	
		
			
				|  |  |  |  | @@ -4280,6 +4540,9 @@ enum nl80211_iface_limit_attrs { | 
		
	
		
			
				|  |  |  |  |   *	of supported channel widths for radar detection. | 
		
	
		
			
				|  |  |  |  |   * @NL80211_IFACE_COMB_RADAR_DETECT_REGIONS: u32 attribute containing the bitmap | 
		
	
		
			
				|  |  |  |  |   *	of supported regulatory regions for radar detection. | 
		
	
		
			
				|  |  |  |  | + * @NL80211_IFACE_COMB_BI_MIN_GCD: u32 attribute specifying the minimum GCD of | 
		
	
		
			
				|  |  |  |  | + *	different beacon intervals supported by all the interface combinations | 
		
	
		
			
				|  |  |  |  | + *	in this group (if not present, all beacon intervals be identical). | 
		
	
		
			
				|  |  |  |  |   * @NUM_NL80211_IFACE_COMB: number of attributes | 
		
	
		
			
				|  |  |  |  |   * @MAX_NL80211_IFACE_COMB: highest attribute number | 
		
	
		
			
				|  |  |  |  |   * | 
		
	
		
			
				|  |  |  |  | @@ -4287,8 +4550,8 @@ enum nl80211_iface_limit_attrs { | 
		
	
		
			
				|  |  |  |  |   *	limits = [ #{STA} <= 1, #{AP} <= 1 ], matching BI, channels = 1, max = 2 | 
		
	
		
			
				|  |  |  |  |   *	=> allows an AP and a STA that must match BIs | 
		
	
		
			
				|  |  |  |  |   * | 
		
	
		
			
				|  |  |  |  | - *	numbers = [ #{AP, P2P-GO} <= 8 ], channels = 1, max = 8 | 
		
	
		
			
				|  |  |  |  | - *	=> allows 8 of AP/GO | 
		
	
		
			
				|  |  |  |  | + *	numbers = [ #{AP, P2P-GO} <= 8 ], BI min gcd, channels = 1, max = 8, | 
		
	
		
			
				|  |  |  |  | + *	=> allows 8 of AP/GO that can have BI gcd >= min gcd | 
		
	
		
			
				|  |  |  |  |   * | 
		
	
		
			
				|  |  |  |  |   *	numbers = [ #{STA} <= 2 ], channels = 2, max = 2 | 
		
	
		
			
				|  |  |  |  |   *	=> allows two STAs on different channels | 
		
	
		
			
				|  |  |  |  | @@ -4314,6 +4577,7 @@ enum nl80211_if_combination_attrs { | 
		
	
		
			
				|  |  |  |  |  	NL80211_IFACE_COMB_NUM_CHANNELS, | 
		
	
		
			
				|  |  |  |  |  	NL80211_IFACE_COMB_RADAR_DETECT_WIDTHS, | 
		
	
		
			
				|  |  |  |  |  	NL80211_IFACE_COMB_RADAR_DETECT_REGIONS, | 
		
	
		
			
				|  |  |  |  | +	NL80211_IFACE_COMB_BI_MIN_GCD, | 
		
	
		
			
				|  |  |  |  |   | 
		
	
		
			
				|  |  |  |  |  	/* keep last */ | 
		
	
		
			
				|  |  |  |  |  	NUM_NL80211_IFACE_COMB, | 
		
	
		
			
				|  |  |  |  | @@ -4634,6 +4898,27 @@ enum nl80211_feature_flags { | 
		
	
		
			
				|  |  |  |  |   *	configuration (AP/mesh) with HT rates. | 
		
	
		
			
				|  |  |  |  |   * @NL80211_EXT_FEATURE_BEACON_RATE_VHT: Driver supports beacon rate | 
		
	
		
			
				|  |  |  |  |   *	configuration (AP/mesh) with VHT rates. | 
		
	
		
			
				|  |  |  |  | + * @NL80211_EXT_FEATURE_FILS_STA: This driver supports Fast Initial Link Setup | 
		
	
		
			
				|  |  |  |  | + *	with user space SME (NL80211_CMD_AUTHENTICATE) in station mode. | 
		
	
		
			
				|  |  |  |  | + * @NL80211_EXT_FEATURE_MGMT_TX_RANDOM_TA: This driver supports randomized TA | 
		
	
		
			
				|  |  |  |  | + *	in @NL80211_CMD_FRAME while not associated. | 
		
	
		
			
				|  |  |  |  | + * @NL80211_EXT_FEATURE_MGMT_TX_RANDOM_TA_CONNECTED: This driver supports | 
		
	
		
			
				|  |  |  |  | + *	randomized TA in @NL80211_CMD_FRAME while associated. | 
		
	
		
			
				|  |  |  |  | + * @NL80211_EXT_FEATURE_SCHED_SCAN_RELATIVE_RSSI: The driver supports sched_scan | 
		
	
		
			
				|  |  |  |  | + *	for reporting BSSs with better RSSI than the current connected BSS | 
		
	
		
			
				|  |  |  |  | + *	(%NL80211_ATTR_SCHED_SCAN_RELATIVE_RSSI). | 
		
	
		
			
				|  |  |  |  | + * @NL80211_EXT_FEATURE_CQM_RSSI_LIST: With this driver the | 
		
	
		
			
				|  |  |  |  | + *	%NL80211_ATTR_CQM_RSSI_THOLD attribute accepts a list of zero or more | 
		
	
		
			
				|  |  |  |  | + *	RSSI threshold values to monitor rather than exactly one threshold. | 
		
	
		
			
				|  |  |  |  | + * @NL80211_EXT_FEATURE_FILS_SK_OFFLOAD: Driver SME supports FILS shared key | 
		
	
		
			
				|  |  |  |  | + *	authentication with %NL80211_CMD_CONNECT. | 
		
	
		
			
				|  |  |  |  | + * @NL80211_EXT_FEATURE_4WAY_HANDSHAKE_STA_PSK: Device wants to do 4-way | 
		
	
		
			
				|  |  |  |  | + *	handshake with PSK in station mode (PSK is passed as part of the connect | 
		
	
		
			
				|  |  |  |  | + *	and associate commands), doing it in the host might not be supported. | 
		
	
		
			
				|  |  |  |  | + * @NL80211_EXT_FEATURE_4WAY_HANDSHAKE_STA_1X: Device wants to do doing 4-way | 
		
	
		
			
				|  |  |  |  | + *	handshake with 802.1X in station mode (will pass EAP frames to the host | 
		
	
		
			
				|  |  |  |  | + *	and accept the set_pmk/del_pmk commands), doing it in the host might not | 
		
	
		
			
				|  |  |  |  | + *	be supported. | 
		
	
		
			
				|  |  |  |  |   * | 
		
	
		
			
				|  |  |  |  |   * @NUM_NL80211_EXT_FEATURES: number of extended features. | 
		
	
		
			
				|  |  |  |  |   * @MAX_NL80211_EXT_FEATURES: highest extended feature index. | 
		
	
		
			
				|  |  |  |  | @@ -4648,6 +4933,14 @@ enum nl80211_ext_feature_index { | 
		
	
		
			
				|  |  |  |  |  	NL80211_EXT_FEATURE_BEACON_RATE_LEGACY, | 
		
	
		
			
				|  |  |  |  |  	NL80211_EXT_FEATURE_BEACON_RATE_HT, | 
		
	
		
			
				|  |  |  |  |  	NL80211_EXT_FEATURE_BEACON_RATE_VHT, | 
		
	
		
			
				|  |  |  |  | +	NL80211_EXT_FEATURE_FILS_STA, | 
		
	
		
			
				|  |  |  |  | +	NL80211_EXT_FEATURE_MGMT_TX_RANDOM_TA, | 
		
	
		
			
				|  |  |  |  | +	NL80211_EXT_FEATURE_MGMT_TX_RANDOM_TA_CONNECTED, | 
		
	
		
			
				|  |  |  |  | +	NL80211_EXT_FEATURE_SCHED_SCAN_RELATIVE_RSSI, | 
		
	
		
			
				|  |  |  |  | +	NL80211_EXT_FEATURE_CQM_RSSI_LIST, | 
		
	
		
			
				|  |  |  |  | +	NL80211_EXT_FEATURE_FILS_SK_OFFLOAD, | 
		
	
		
			
				|  |  |  |  | +	NL80211_EXT_FEATURE_4WAY_HANDSHAKE_STA_PSK, | 
		
	
		
			
				|  |  |  |  | +	NL80211_EXT_FEATURE_4WAY_HANDSHAKE_STA_1X, | 
		
	
		
			
				|  |  |  |  |   | 
		
	
		
			
				|  |  |  |  |  	/* add new features before the definition below */ | 
		
	
		
			
				|  |  |  |  |  	NUM_NL80211_EXT_FEATURES, | 
		
	
		
			
				|  |  |  |  | @@ -4687,6 +4980,21 @@ enum nl80211_connect_failed_reason { | 
		
	
		
			
				|  |  |  |  |  }; | 
		
	
		
			
				|  |  |  |  |   | 
		
	
		
			
				|  |  |  |  |  /** | 
		
	
		
			
				|  |  |  |  | + * enum nl80211_timeout_reason - timeout reasons | 
		
	
		
			
				|  |  |  |  | + * | 
		
	
		
			
				|  |  |  |  | + * @NL80211_TIMEOUT_UNSPECIFIED: Timeout reason unspecified. | 
		
	
		
			
				|  |  |  |  | + * @NL80211_TIMEOUT_SCAN: Scan (AP discovery) timed out. | 
		
	
		
			
				|  |  |  |  | + * @NL80211_TIMEOUT_AUTH: Authentication timed out. | 
		
	
		
			
				|  |  |  |  | + * @NL80211_TIMEOUT_ASSOC: Association timed out. | 
		
	
		
			
				|  |  |  |  | + */ | 
		
	
		
			
				|  |  |  |  | +enum nl80211_timeout_reason { | 
		
	
		
			
				|  |  |  |  | +	NL80211_TIMEOUT_UNSPECIFIED, | 
		
	
		
			
				|  |  |  |  | +	NL80211_TIMEOUT_SCAN, | 
		
	
		
			
				|  |  |  |  | +	NL80211_TIMEOUT_AUTH, | 
		
	
		
			
				|  |  |  |  | +	NL80211_TIMEOUT_ASSOC, | 
		
	
		
			
				|  |  |  |  | +}; | 
		
	
		
			
				|  |  |  |  | + | 
		
	
		
			
				|  |  |  |  | +/** | 
		
	
		
			
				|  |  |  |  |   * enum nl80211_scan_flags -  scan request control flags | 
		
	
		
			
				|  |  |  |  |   * | 
		
	
		
			
				|  |  |  |  |   * Scan request control flags are used to control the handling | 
		
	
		
			
				|  |  |  |  | @@ -4768,12 +5076,17 @@ enum nl80211_smps_mode { | 
		
	
		
			
				|  |  |  |  |   *	change to the channel status. | 
		
	
		
			
				|  |  |  |  |   * @NL80211_RADAR_NOP_FINISHED: The Non-Occupancy Period for this channel is | 
		
	
		
			
				|  |  |  |  |   *	over, channel becomes usable. | 
		
	
		
			
				|  |  |  |  | + * @NL80211_RADAR_PRE_CAC_EXPIRED: Channel Availability Check done on this | 
		
	
		
			
				|  |  |  |  | + *	non-operating channel is expired and no longer valid. New CAC must | 
		
	
		
			
				|  |  |  |  | + *	be done on this channel before starting the operation. This is not | 
		
	
		
			
				|  |  |  |  | + *	applicable for ETSI dfs domain where pre-CAC is valid for ever. | 
		
	
		
			
				|  |  |  |  |   */ | 
		
	
		
			
				|  |  |  |  |  enum nl80211_radar_event { | 
		
	
		
			
				|  |  |  |  |  	NL80211_RADAR_DETECTED, | 
		
	
		
			
				|  |  |  |  |  	NL80211_RADAR_CAC_FINISHED, | 
		
	
		
			
				|  |  |  |  |  	NL80211_RADAR_CAC_ABORTED, | 
		
	
		
			
				|  |  |  |  |  	NL80211_RADAR_NOP_FINISHED, | 
		
	
		
			
				|  |  |  |  | +	NL80211_RADAR_PRE_CAC_EXPIRED, | 
		
	
		
			
				|  |  |  |  |  }; | 
		
	
		
			
				|  |  |  |  |   | 
		
	
		
			
				|  |  |  |  |  /** | 
		
	
		
			
				|  |  |  |  | @@ -4900,8 +5213,9 @@ enum nl80211_sched_scan_plan { | 
		
	
		
			
				|  |  |  |  |  /** | 
		
	
		
			
				|  |  |  |  |   * struct nl80211_bss_select_rssi_adjust - RSSI adjustment parameters. | 
		
	
		
			
				|  |  |  |  |   * | 
		
	
		
			
				|  |  |  |  | - * @band: band of BSS that must match for RSSI value adjustment. | 
		
	
		
			
				|  |  |  |  | - * @delta: value used to adjust the RSSI value of matching BSS. | 
		
	
		
			
				|  |  |  |  | + * @band: band of BSS that must match for RSSI value adjustment. The value | 
		
	
		
			
				|  |  |  |  | + *	of this field is according to &enum nl80211_band. | 
		
	
		
			
				|  |  |  |  | + * @delta: value used to adjust the RSSI value of matching BSS in dB. | 
		
	
		
			
				|  |  |  |  |   */ | 
		
	
		
			
				|  |  |  |  |  struct nl80211_bss_select_rssi_adjust { | 
		
	
		
			
				|  |  |  |  |  	__u8 band; | 
		
	
		
			
				|  |  |  |  | @@ -4942,21 +5256,6 @@ enum nl80211_bss_select_attr { | 
		
	
		
			
				|  |  |  |  |  }; | 
		
	
		
			
				|  |  |  |  |   | 
		
	
		
			
				|  |  |  |  |  /** | 
		
	
		
			
				|  |  |  |  | - * enum nl80211_nan_dual_band_conf - NAN dual band configuration | 
		
	
		
			
				|  |  |  |  | - * | 
		
	
		
			
				|  |  |  |  | - * Defines the NAN dual band mode of operation | 
		
	
		
			
				|  |  |  |  | - * | 
		
	
		
			
				|  |  |  |  | - * @NL80211_NAN_BAND_DEFAULT: device default mode | 
		
	
		
			
				|  |  |  |  | - * @NL80211_NAN_BAND_2GHZ: 2.4GHz mode | 
		
	
		
			
				|  |  |  |  | - * @NL80211_NAN_BAND_5GHZ: 5GHz mode | 
		
	
		
			
				|  |  |  |  | -  */ | 
		
	
		
			
				|  |  |  |  | -enum nl80211_nan_dual_band_conf { | 
		
	
		
			
				|  |  |  |  | -	NL80211_NAN_BAND_DEFAULT	= 1 << 0, | 
		
	
		
			
				|  |  |  |  | -	NL80211_NAN_BAND_2GHZ		= 1 << 1, | 
		
	
		
			
				|  |  |  |  | -	NL80211_NAN_BAND_5GHZ		= 1 << 2, | 
		
	
		
			
				|  |  |  |  | -}; | 
		
	
		
			
				|  |  |  |  | - | 
		
	
		
			
				|  |  |  |  | -/** | 
		
	
		
			
				|  |  |  |  |   * enum nl80211_nan_function_type - NAN function type | 
		
	
		
			
				|  |  |  |  |   * | 
		
	
		
			
				|  |  |  |  |   * Defines the function type of a NAN function | 
		
	
		
			
				|  |  |  |  |  	__NL80211_BSS_AFTER_LAST, | 
		
	
	
		
			
				
					
					| 
							
							
							
						 |  |  |   |