| From d50b1a10adccff5c2154517cc9c8adfd249f4339 Mon Sep 17 00:00:00 2001 |
| From: Roy Luo <royluo@google.com> |
| Date: Tue, 2 Jul 2019 13:47:24 -0700 |
| Subject: [PATCH] BACKPORT: sync enum nl80211_commands with kernel v5.2 |
| |
| The following upstream commits add support of |
| nl80211 command NL80211_CMD_PROBE_MESH_LINK: |
| 5ab92e7fe49ad74293b50fb9e6f25be5521e2f68 |
| 060167729a78d626abaee1a0ebb64b252374426e |
| 8828f81ad4a2f4e89ebe6e7793c06ed767c31d53 |
| |
| This patch sync the enum nl80211_commands with |
| kernel v5.2 in order to use the new nl80211 command. |
| |
| Signed-off-by: Roy Luo <royluo@google.com> |
| --- |
| include/uapi/linux/nl80211.h | 119+++++++++++++++++++++++++++++++++++++++++++++++ |
| 1 file changed, 119 insertions(+) |
| |
| diff --git a/include/uapi/linux/nl80211.h b/include/uapi/linux/nl80211.h |
| index f840536..79e9734 100644 |
| --- a/include/uapi/linux/nl80211.h |
| +++ b/include/uapi/linux/nl80211.h |
| @@ -982,6 +982,103 @@ |
| * @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_PORT_AUTHORIZED: An event that indicates that the 4 way |
| + * handshake was completed successfully by the driver. The BSSID is |
| + * specified with %NL80211_ATTR_MAC. Drivers that support 4 way handshake |
| + * offload should send this event after indicating 802.11 association with |
| + * %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 |
| + * drivers that do not define separate commands for authentication and |
| + * association, but rely on user space for the authentication to happen. |
| + * This interface acts both as the event request (driver to user space) |
| + * to trigger the authentication and command response (userspace to |
| + * driver) to indicate the authentication status. |
| + * |
| + * User space uses the %NL80211_CMD_CONNECT command to the host driver to |
| + * trigger a connection. The host driver selects a BSS and further uses |
| + * this interface to offload only the authentication part to the user |
| + * space. Authentication frames are passed between the driver and user |
| + * space through the %NL80211_CMD_FRAME interface. Host driver proceeds |
| + * further with the association after getting successful authentication |
| + * status. User space indicates the authentication status through |
| + * %NL80211_ATTR_STATUS_CODE attribute in %NL80211_CMD_EXTERNAL_AUTH |
| + * command interface. |
| + * |
| + * Host driver reports this status on an authentication failure to the |
| + * user space through the connect result as the user space would have |
| + * initiated the connection through the connect request. |
| + * |
| + * @NL80211_CMD_STA_OPMODE_CHANGED: An event that notify station's |
| + * ht opmode or vht opmode changes using any of %NL80211_ATTR_SMPS_MODE, |
| + * %NL80211_ATTR_CHANNEL_WIDTH,%NL80211_ATTR_NSS attributes with its |
| + * address(specified in %NL80211_ATTR_MAC). |
| + * |
| + * @NL80211_CMD_GET_FTM_RESPONDER_STATS: Retrieve FTM responder statistics, in |
| + * the %NL80211_ATTR_FTM_RESPONDER_STATS attribute. |
| + * |
| + * @NL80211_CMD_PEER_MEASUREMENT_START: start a (set of) peer measurement(s) |
| + * with the given parameters, which are encapsulated in the nested |
| + * %NL80211_ATTR_PEER_MEASUREMENTS attribute. Optionally, MAC address |
| + * randomization may be enabled and configured by specifying the |
| + * %NL80211_ATTR_MAC and %NL80211_ATTR_MAC_MASK attributes. |
| + * If a timeout is requested, use the %NL80211_ATTR_TIMEOUT attribute. |
| + * A u64 cookie for further %NL80211_ATTR_COOKIE use is is returned in |
| + * the netlink extended ack message. |
| + * |
| + * To cancel a measurement, close the socket that requested it. |
| + * |
| + * Measurement results are reported to the socket that requested the |
| + * measurement using @NL80211_CMD_PEER_MEASUREMENT_RESULT when they |
| + * become available, so applications must ensure a large enough socket |
| + * buffer size. |
| + * |
| + * Depending on driver support it may or may not be possible to start |
| + * multiple concurrent measurements. |
| + * @NL80211_CMD_PEER_MEASUREMENT_RESULT: This command number is used for the |
| + * result notification from the driver to the requesting socket. |
| + * @NL80211_CMD_PEER_MEASUREMENT_COMPLETE: Notification only, indicating that |
| + * the measurement completed, using the measurement cookie |
| + * (%NL80211_ATTR_COOKIE). |
| + * |
| + * @NL80211_CMD_NOTIFY_RADAR: Notify the kernel that a radar signal was |
| + * detected and reported by a neighboring device on the channel |
| + * indicated by %NL80211_ATTR_WIPHY_FREQ and other attributes |
| + * determining the width and type. |
| + * |
| + * @NL80211_CMD_UPDATE_OWE_INFO: This interface allows the host driver to |
| + * offload OWE processing to user space. This intends to support |
| + * OWE AKM by the host drivers that implement SME but rely |
| + * on the user space for the cryptographic/DH IE processing in AP mode. |
| + * |
| + * @NL80211_CMD_PROBE_MESH_LINK: The requirement for mesh link metric |
| + * refreshing, is that from one mesh point we be able to send some data |
| + * frames to other mesh points which are not currently selected as a |
| + * primary traffic path, but which are only 1 hop away. The absence of |
| + * the primary path to the chosen node makes it necessary to apply some |
| + * form of marking on a chosen packet stream so that the packets can be |
| + * properly steered to the selected node for testing, and not by the |
| + * regular mesh path lookup. Further, the packets must be of type data |
| + * so that the rate control (often embedded in firmware) is used for |
| + * rate selection. |
| + * |
| + * Here attribute %NL80211_ATTR_MAC is used to specify connected mesh |
| + * peer MAC address and %NL80211_ATTR_FRAME is used to specify the frame |
| + * content. The frame is ethernet data. |
| * |
| * @NL80211_CMD_MAX: highest used command number |
| * @__NL80211_CMD_AFTER_LAST: internal use |
| @@ -1185,6 +1200,28 @@ enum nl80211_commands { |
| NL80211_CMD_SET_PMK, |
| NL80211_CMD_DEL_PMK, |
| |
| + NL80211_CMD_PORT_AUTHORIZED, |
| + |
| + NL80211_CMD_RELOAD_REGDB, |
| + |
| + NL80211_CMD_EXTERNAL_AUTH, |
| + |
| + NL80211_CMD_STA_OPMODE_CHANGED, |
| + |
| + NL80211_CMD_CONTROL_PORT_FRAME, |
| + |
| + NL80211_CMD_GET_FTM_RESPONDER_STATS, |
| + |
| + NL80211_CMD_PEER_MEASUREMENT_START, |
| + NL80211_CMD_PEER_MEASUREMENT_RESULT, |
| + NL80211_CMD_PEER_MEASUREMENT_COMPLETE, |
| + |
| + NL80211_CMD_NOTIFY_RADAR, |
| + |
| + NL80211_CMD_UPDATE_OWE_INFO, |
| + |
| + NL80211_CMD_PROBE_MESH_LINK, |
| + |
| /* add new commands above here */ |
| |
| /* used to define NL80211_CMD_MAX below */ |
| -- |
| 2.22.0.657.g960e92d24f-goog |