Sync linux/nl80211.h with wireless-testing.git
authorJouni Malinen <jouni.malinen@atheros.com>
Thu, 9 Apr 2009 13:39:24 +0000 (16:39 +0300)
committerJouni Malinen <j@w1.fi>
Thu, 9 Apr 2009 13:39:24 +0000 (16:39 +0300)
This adds support for Michael MIC failure events and info on maximum
supported scan IE length.

src/common/nl80211_copy.h

index 9685eaa..ee11dfe 100644 (file)
  *     %NL80211_ATTR_IE. If the command succeeds, the requested data will be
  *     added to all specified management frames generated by
  *     kernel/firmware/driver.
+ *     Note: This command has been removed and it is only reserved at this
+ *     point to avoid re-using existing command number. The functionality this
+ *     command was planned for has been provided with cleaner design with the
+ *     option to specify additional IEs in NL80211_CMD_TRIGGER_SCAN,
+ *     NL80211_CMD_AUTHENTICATE, NL80211_CMD_ASSOCIATE,
+ *     NL80211_CMD_DEAUTHENTICATE, and NL80211_CMD_DISASSOCIATE.
  *
  * @NL80211_CMD_GET_SCAN: get scan results
  * @NL80211_CMD_TRIGGER_SCAN: trigger a new scan with the given parameters
  *     NL80211_CMD_AUTHENTICATE but for Disassociation frames (similar to
  *     MLME-DISASSOCIATE.request and MLME-DISASSOCIATE.indication primitives).
  *
+ * @NL80211_CMD_MICHAEL_MIC_FAILURE: notification of a locally detected Michael
+ *     MIC (part of TKIP) failure; sent on the "mlme" multicast group; the
+ *     event includes %NL80211_ATTR_MAC to describe the source MAC address of
+ *     the frame with invalid MIC, %NL80211_ATTR_KEY_TYPE to show the key
+ *     type, %NL80211_ATTR_KEY_IDX to indicate the key identifier, and
+ *     %NL80211_ATTR_KEY_SEQ to indicate the TSC value of the frame; this
+ *     event matches with MLME-MICHAELMICFAILURE.indication() primitive
+ *
  * @NL80211_CMD_MAX: highest used command number
  * @__NL80211_CMD_AFTER_LAST: internal use
  */
@@ -238,7 +252,7 @@ enum nl80211_commands {
        NL80211_CMD_GET_MESH_PARAMS,
        NL80211_CMD_SET_MESH_PARAMS,
 
-       NL80211_CMD_SET_MGMT_EXTRA_IE,
+       NL80211_CMD_SET_MGMT_EXTRA_IE /* reserved; not used */,
 
        NL80211_CMD_GET_REG,
 
@@ -254,6 +268,8 @@ enum nl80211_commands {
        NL80211_CMD_DEAUTHENTICATE,
        NL80211_CMD_DISASSOCIATE,
 
+       NL80211_CMD_MICHAEL_MIC_FAILURE,
+
        /* add new commands above here */
 
        /* used to define NL80211_CMD_MAX below */
@@ -374,6 +390,8 @@ enum nl80211_commands {
  *
  * @NL80211_ATTR_MAX_NUM_SCAN_SSIDS: number of SSIDs you can scan with
  *     a single scan request, a wiphy attribute.
+ * @NL80211_ATTR_MAX_SCAN_IE_LEN: maximum length of information elements
+ *     that can be added to a scan request
  *
  * @NL80211_ATTR_SCAN_FREQUENCIES: nested attribute with frequencies (in MHz)
  * @NL80211_ATTR_SCAN_SSIDS: nested attribute with SSIDs, leave out for passive
@@ -402,6 +420,9 @@ enum nl80211_commands {
  * @NL80211_ATTR_REASON_CODE: ReasonCode for %NL80211_CMD_DEAUTHENTICATE and
  *     %NL80211_CMD_DISASSOCIATE, u16
  *
+ * @NL80211_ATTR_KEY_TYPE: Key Type, see &enum nl80211_key_type, represented as
+ *     a u32
+ *
  * @NL80211_ATTR_MAX: highest attribute number currently defined
  * @__NL80211_ATTR_AFTER_LAST: internal use
  */
@@ -486,6 +507,10 @@ enum nl80211_attrs {
        NL80211_ATTR_AUTH_TYPE,
        NL80211_ATTR_REASON_CODE,
 
+       NL80211_ATTR_MAX_SCAN_IE_LEN,
+
+       NL80211_ATTR_KEY_TYPE,
+
        /* add attributes here, update the policy in nl80211.c */
 
        __NL80211_ATTR_AFTER_LAST,
@@ -1056,4 +1081,17 @@ enum nl80211_auth_type {
        NL80211_AUTHTYPE_FT,
        NL80211_AUTHTYPE_NETWORK_EAP,
 };
+
+/**
+ * enum nl80211_key_type - Key Type
+ * @NL80211_KEYTYPE_GROUP: Group (broadcast/multicast) key
+ * @NL80211_KEYTYPE_PAIRWISE: Pairwise (unicast/individual) key
+ * @NL80211_KEYTYPE_PEERKEY: PeerKey (DLS)
+ */
+enum nl80211_key_type {
+       NL80211_KEYTYPE_GROUP,
+       NL80211_KEYTYPE_PAIRWISE,
+       NL80211_KEYTYPE_PEERKEY,
+};
+
 #endif /* __LINUX_NL80211_H */