]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
Sync with mac80211-next.git include/uapi/linux/nl80211.h
authorJouni Malinen <j@w1.fi>
Fri, 30 Mar 2018 07:54:57 +0000 (10:54 +0300)
committerJouni Malinen <j@w1.fi>
Fri, 30 Mar 2018 07:54:57 +0000 (10:54 +0300)
This brings in nl80211 definitions as of 2018-03-26.

Signed-off-by: Jouni Malinen <j@w1.fi>
src/drivers/nl80211_copy.h

index c13c84304be3984a50ab697b3ee26040ec602910..15daf5e2638d9bbcb6ad8b5d104b520dc81678fe 100644 (file)
  *     IEs in %NL80211_ATTR_IE, %NL80211_ATTR_AUTH_TYPE, %NL80211_ATTR_USE_MFP,
  *     %NL80211_ATTR_MAC, %NL80211_ATTR_WIPHY_FREQ, %NL80211_ATTR_CONTROL_PORT,
  *     %NL80211_ATTR_CONTROL_PORT_ETHERTYPE,
- *     %NL80211_ATTR_CONTROL_PORT_NO_ENCRYPT, %NL80211_ATTR_MAC_HINT, and
+ *     %NL80211_ATTR_CONTROL_PORT_NO_ENCRYPT,
+ *     %NL80211_ATTR_CONTROL_PORT_OVER_NL80211, %NL80211_ATTR_MAC_HINT, and
  *     %NL80211_ATTR_WIPHY_FREQ_HINT.
  *     If included, %NL80211_ATTR_MAC and %NL80211_ATTR_WIPHY_FREQ are
  *     restrictions on BSS selection, i.e., they effectively prevent roaming
  *     &NL80211_CMD_CONNECT or &NL80211_CMD_ROAM. If the 4 way handshake failed
  *     &NL80211_CMD_DISCONNECT should be indicated instead.
  *
+ * @NL80211_CMD_CONTROL_PORT_FRAME: Control Port (e.g. PAE) frame TX request
+ *     and RX notification.  This command is used both as a request to transmit
+ *     a control port frame and as a notification that a control port frame
+ *     has been received. %NL80211_ATTR_FRAME is used to specify the
+ *     frame contents.  The frame is the raw EAPoL data, without ethernet or
+ *     802.11 headers.
+ *     When used as an event indication %NL80211_ATTR_CONTROL_PORT_ETHERTYPE,
+ *     %NL80211_ATTR_CONTROL_PORT_NO_ENCRYPT and %NL80211_ATTR_MAC are added
+ *     indicating the protocol type of the received frame; whether the frame
+ *     was received unencrypted and the MAC address of the peer respectively.
+ *
  * @NL80211_CMD_RELOAD_REGDB: Request that the regdb firmware file is reloaded.
  *
  * @NL80211_CMD_EXTERNAL_AUTH: This interface is exclusively defined for host
@@ -1228,6 +1240,8 @@ enum nl80211_commands {
 
        NL80211_CMD_STA_OPMODE_CHANGED,
 
+       NL80211_CMD_CONTROL_PORT_FRAME,
+
        /* add new commands above here */
 
        /* used to define NL80211_CMD_MAX below */
@@ -1475,6 +1489,15 @@ enum nl80211_commands {
  * @NL80211_ATTR_CONTROL_PORT_NO_ENCRYPT: When included along with
  *     %NL80211_ATTR_CONTROL_PORT_ETHERTYPE, indicates that the custom
  *     ethertype frames used for key negotiation must not be encrypted.
+ * @NL80211_ATTR_CONTROL_PORT_OVER_NL80211: A flag indicating whether control
+ *     port frames (e.g. of type given in %NL80211_ATTR_CONTROL_PORT_ETHERTYPE)
+ *     will be sent directly to the network interface or sent via the NL80211
+ *     socket.  If this attribute is missing, then legacy behavior of sending
+ *     control port frames directly to the network interface is used.  If the
+ *     flag is included, then control port frames are sent over NL80211 instead
+ *     using %CMD_CONTROL_PORT_FRAME.  If control port routing over NL80211 is
+ *     to be used then userspace must also use the %NL80211_ATTR_SOCKET_OWNER
+ *     flag.
  *
  * @NL80211_ATTR_TESTDATA: Testmode data blob, passed through to the driver.
  *     We recommend using nested, driver-specific attributes within this.
@@ -1962,6 +1985,12 @@ enum nl80211_commands {
  *     multicast group.
  *     If set during %NL80211_CMD_ASSOCIATE or %NL80211_CMD_CONNECT the
  *     station will deauthenticate when the socket is closed.
+ *     If set during %NL80211_CMD_JOIN_IBSS the IBSS will be automatically
+ *     torn down when the socket is closed.
+ *     If set during %NL80211_CMD_JOIN_MESH the mesh setup will be
+ *     automatically torn down when the socket is closed.
+ *     If set during %NL80211_CMD_START_AP the AP will be automatically
+ *     disabled when the socket is closed.
  *
  * @NL80211_ATTR_TDLS_INITIATOR: flag attribute indicating the current end is
  *     the TDLS link initiator.
@@ -2628,6 +2657,8 @@ enum nl80211_attrs {
        NL80211_ATTR_NSS,
        NL80211_ATTR_ACK_SIGNAL,
 
+       NL80211_ATTR_CONTROL_PORT_OVER_NL80211,
+
        /* add attributes here, update the policy in nl80211.c */
 
        __NL80211_ATTR_AFTER_LAST,
@@ -4999,6 +5030,14 @@ enum nl80211_feature_flags {
  * @NL80211_EXT_FEATURE_LOW_SPAN_SCAN: Driver supports low span scan.
  * @NL80211_EXT_FEATURE_LOW_POWER_SCAN: Driver supports low power scan.
  * @NL80211_EXT_FEATURE_HIGH_ACCURACY_SCAN: Driver supports high accuracy scan.
+ * @NL80211_EXT_FEATURE_DFS_OFFLOAD: HW/driver will offload DFS actions.
+ *     Device or driver will do all DFS-related actions by itself,
+ *     informing user-space about CAC progress, radar detection event,
+ *     channel change triggered by radar detection event.
+ *     No need to start CAC from user-space, no need to react to
+ *     "radar detected" event.
+ * @NL80211_EXT_FEATURE_CONTROL_PORT_OVER_NL80211: Driver supports sending and
+ *     receiving control port frames over nl80211 instead of the netdevice.
  *
  * @NUM_NL80211_EXT_FEATURES: number of extended features.
  * @MAX_NL80211_EXT_FEATURES: highest extended feature index.
@@ -5029,6 +5068,8 @@ enum nl80211_ext_feature_index {
        NL80211_EXT_FEATURE_LOW_SPAN_SCAN,
        NL80211_EXT_FEATURE_LOW_POWER_SCAN,
        NL80211_EXT_FEATURE_HIGH_ACCURACY_SCAN,
+       NL80211_EXT_FEATURE_DFS_OFFLOAD,
+       NL80211_EXT_FEATURE_CONTROL_PORT_OVER_NL80211,
 
        /* add new features before the definition below */
        NUM_NL80211_EXT_FEATURES,
@@ -5204,6 +5245,8 @@ enum nl80211_smps_mode {
  *     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.
+ * @NL80211_RADAR_CAC_STARTED: Channel Availability Check has been started,
+ *     should be generated by HW if NL80211_EXT_FEATURE_DFS_OFFLOAD is enabled.
  */
 enum nl80211_radar_event {
        NL80211_RADAR_DETECTED,
@@ -5211,6 +5254,7 @@ enum nl80211_radar_event {
        NL80211_RADAR_CAC_ABORTED,
        NL80211_RADAR_NOP_FINISHED,
        NL80211_RADAR_PRE_CAC_EXPIRED,
+       NL80211_RADAR_CAC_STARTED,
 };
 
 /**