History

Merge tag 'mac80211-next-for-davem-2018-03-29' of git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next

Johannes Berg says: ==================== We have a fair number of patches, but many of them are from the first bullet here: * EAPoL-over-nl80211 from Denis - this will let us fix some long-standing issues with bridging, races with encryption and more * DFS offload support from the qtnfmac folks * regulatory database changes for the new ETSI adaptivity requirements * various other fixes and small enhancements ====================

David S. Miller committed 8 years ago

Commit e15f20e2 parents e3e67a4 c470bdc30 files · +979 −181Browse files

Showing the changes to include/uapi/linux (1 of 30 files). Show all

Unified · Split

include/uapi/linux/nl80211.h+45−1
@@ -542,7 +542,8 @@ · 541 unmodified lines
542542 * IEs in %NL80211_ATTR_IE, %NL80211_ATTR_AUTH_TYPE, %NL80211_ATTR_USE_MFP,
543543 * %NL80211_ATTR_MAC, %NL80211_ATTR_WIPHY_FREQ, %NL80211_ATTR_CONTROL_PORT,
544544 * %NL80211_ATTR_CONTROL_PORT_ETHERTYPE,
545− * %NL80211_ATTR_CONTROL_PORT_NO_ENCRYPT, %NL80211_ATTR_MAC_HINT, and
545+ * %NL80211_ATTR_CONTROL_PORT_NO_ENCRYPT,
546+ * %NL80211_ATTR_CONTROL_PORT_OVER_NL80211, %NL80211_ATTR_MAC_HINT, and
546547 * %NL80211_ATTR_WIPHY_FREQ_HINT.
547548 * If included, %NL80211_ATTR_MAC and %NL80211_ATTR_WIPHY_FREQ are
548549 * restrictions on BSS selection, i.e., they effectively prevent roaming
@@ -990,6 +991,17 @@ · 441 unmodified lines
990991 * &NL80211_CMD_CONNECT or &NL80211_CMD_ROAM. If the 4 way handshake failed
991992 * &NL80211_CMD_DISCONNECT should be indicated instead.
992993 *
994+ * @NL80211_CMD_CONTROL_PORT_FRAME: Control Port (e.g. PAE) frame TX request
995+ * and RX notification. This command is used both as a request to transmit
996+ * a control port frame and as a notification that a control port frame
997+ * has been received. %NL80211_ATTR_FRAME is used to specify the
998+ * frame contents. The frame is the raw EAPoL data, without ethernet or
999+ * 802.11 headers.
1000+ * When used as an event indication %NL80211_ATTR_CONTROL_PORT_ETHERTYPE,
1001+ * %NL80211_ATTR_CONTROL_PORT_NO_ENCRYPT and %NL80211_ATTR_MAC are added
1002+ * indicating the protocol type of the received frame; whether the frame
1003+ * was received unencrypted and the MAC address of the peer respectively.
1004+ *
9931005 * @NL80211_CMD_RELOAD_REGDB: Request that the regdb firmware file is reloaded.
9941006 *
9951007 * @NL80211_CMD_EXTERNAL_AUTH: This interface is exclusively defined for host
@@ -1228,6 +1240,8 @@ enum nl80211_commands { · 232 unmodified lines
12281240
12291241 NL80211_CMD_STA_OPMODE_CHANGED,
12301242
1243+ NL80211_CMD_CONTROL_PORT_FRAME,
1244+
12311245 /* add new commands above here */
12321246
12331247 /* used to define NL80211_CMD_MAX below */
@@ -1475,6 +1489,15 @@ enum nl80211_commands { · 241 unmodified lines
14751489 * @NL80211_ATTR_CONTROL_PORT_NO_ENCRYPT: When included along with
14761490 * %NL80211_ATTR_CONTROL_PORT_ETHERTYPE, indicates that the custom
14771491 * ethertype frames used for key negotiation must not be encrypted.
1492+ * @NL80211_ATTR_CONTROL_PORT_OVER_NL80211: A flag indicating whether control
1493+ * port frames (e.g. of type given in %NL80211_ATTR_CONTROL_PORT_ETHERTYPE)
1494+ * will be sent directly to the network interface or sent via the NL80211
1495+ * socket. If this attribute is missing, then legacy behavior of sending
1496+ * control port frames directly to the network interface is used. If the
1497+ * flag is included, then control port frames are sent over NL80211 instead
1498+ * using %CMD_CONTROL_PORT_FRAME. If control port routing over NL80211 is
1499+ * to be used then userspace must also use the %NL80211_ATTR_SOCKET_OWNER
1500+ * flag.
14781501 *
14791502 * @NL80211_ATTR_TESTDATA: Testmode data blob, passed through to the driver.
14801503 * We recommend using nested, driver-specific attributes within this.
@@ -1962,6 +1985,12 @@ enum nl80211_commands { · 481 unmodified lines
19621985 * multicast group.
19631986 * If set during %NL80211_CMD_ASSOCIATE or %NL80211_CMD_CONNECT the
19641987 * station will deauthenticate when the socket is closed.
1988+ * If set during %NL80211_CMD_JOIN_IBSS the IBSS will be automatically
1989+ * torn down when the socket is closed.
1990+ * If set during %NL80211_CMD_JOIN_MESH the mesh setup will be
1991+ * automatically torn down when the socket is closed.
1992+ * If set during %NL80211_CMD_START_AP the AP will be automatically
1993+ * disabled when the socket is closed.
19651994 *
19661995 * @NL80211_ATTR_TDLS_INITIATOR: flag attribute indicating the current end is
19671996 * the TDLS link initiator.
@@ -2628,6 +2657,8 @@ enum nl80211_attrs { · 660 unmodified lines
26282657 NL80211_ATTR_NSS,
26292658 NL80211_ATTR_ACK_SIGNAL,
26302659
2660+ NL80211_ATTR_CONTROL_PORT_OVER_NL80211,
2661+
26312662 /* add attributes here, update the policy in nl80211.c */
26322663
26332664 __NL80211_ATTR_AFTER_LAST,
@@ -4999,6 +5030,14 @@ enum nl80211_feature_flags { · 2365 unmodified lines
49995030 * @NL80211_EXT_FEATURE_LOW_SPAN_SCAN: Driver supports low span scan.
50005031 * @NL80211_EXT_FEATURE_LOW_POWER_SCAN: Driver supports low power scan.
50015032 * @NL80211_EXT_FEATURE_HIGH_ACCURACY_SCAN: Driver supports high accuracy scan.
5033+ * @NL80211_EXT_FEATURE_DFS_OFFLOAD: HW/driver will offload DFS actions.
5034+ * Device or driver will do all DFS-related actions by itself,
5035+ * informing user-space about CAC progress, radar detection event,
5036+ * channel change triggered by radar detection event.
5037+ * No need to start CAC from user-space, no need to react to
5038+ * "radar detected" event.
5039+ * @NL80211_EXT_FEATURE_CONTROL_PORT_OVER_NL80211: Driver supports sending and
5040+ * receiving control port frames over nl80211 instead of the netdevice.
50025041 *
50035042 * @NUM_NL80211_EXT_FEATURES: number of extended features.
50045043 * @MAX_NL80211_EXT_FEATURES: highest extended feature index.
@@ -5029,6 +5068,8 @@ enum nl80211_ext_feature_index { · 24 unmodified lines
50295068 NL80211_EXT_FEATURE_LOW_SPAN_SCAN,
50305069 NL80211_EXT_FEATURE_LOW_POWER_SCAN,
50315070 NL80211_EXT_FEATURE_HIGH_ACCURACY_SCAN,
5071+ NL80211_EXT_FEATURE_DFS_OFFLOAD,
5072+ NL80211_EXT_FEATURE_CONTROL_PORT_OVER_NL80211,
50325073
50335074 /* add new features before the definition below */
50345075 NUM_NL80211_EXT_FEATURES,
@@ -5204,6 +5245,8 @@ enum nl80211_smps_mode { · 169 unmodified lines
52045245 * non-operating channel is expired and no longer valid. New CAC must
52055246 * be done on this channel before starting the operation. This is not
52065247 * applicable for ETSI dfs domain where pre-CAC is valid for ever.
5248+ * @NL80211_RADAR_CAC_STARTED: Channel Availability Check has been started,
5249+ * should be generated by HW if NL80211_EXT_FEATURE_DFS_OFFLOAD is enabled.
52075250 */
52085251 enum nl80211_radar_event {
52095252 NL80211_RADAR_DETECTED,
@@ -5211,6 +5254,7 @@ enum nl80211_radar_event { · 1 unmodified line
52115254 NL80211_RADAR_CAC_ABORTED,
52125255 NL80211_RADAR_NOP_FINISHED,
52135256 NL80211_RADAR_PRE_CAC_EXPIRED,
5257+ NL80211_RADAR_CAC_STARTED,
52145258 };
52155259
52165260 /**