Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 31fa2d5f authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "cfg80211: Key management offload support for SHA-256 and FT/8021.X"

parents 741aa5d9 3bb41fde
Loading
Loading
Loading
Loading
+2 −3
Original line number Diff line number Diff line
@@ -6,7 +6,7 @@ Security Network during initial connection or after a roam between
APs occurs.  It might also happen during after the device handles a
PTK rekeying operation.

This design only supports key managment offload in a station
This design only supports key management offload in a station
(non-AP STA).

There are a couple of possible advantages to offloading key
@@ -83,8 +83,7 @@ NL80211_KEY_MGMT_OFFLOAD_SUPPORT_PMKSA
   association connect time because the 802.1X authentication must
   first take place before the PMK is established.  The PMK will be
   passed to the driver using cfg80211_key_mgmt_set_pmk in this case
   once it is known.  A new cipher suite type is defined to identify
   the value as a PMK when cfg80211_add_key is used in this way.
   once it is known.

Indication
----------
+6 −4
Original line number Diff line number Diff line
@@ -2090,7 +2090,9 @@ struct cfg80211_qos_map {
 *
 * @key_mgmt_set_pmk: Used to pass the PMK to the device for key management
 *	offload.  This will be used in the case of key management offload on an
 *	already established PMKSA.
 *	already established PMKSA.  If connection is FT (802.11r) enabled with
 *	802.1X, then the second 256 bits of the MSK is passed instead of the
 *	PMK.
 */
struct cfg80211_ops {
	int	(*suspend)(struct wiphy *wiphy, struct cfg80211_wowlan *wow);
@@ -2336,7 +2338,7 @@ struct cfg80211_ops {
				    struct cfg80211_chan_def *chandef);

	int	(*key_mgmt_set_pmk)(struct wiphy *wiphy, struct net_device *dev,
				   u8 *pmk);
				    const u8 *pmk);
};

/*
@@ -2726,8 +2728,8 @@ struct wiphy_vendor_command {
 *
 * @key_mgmt_offload_support: Bitmap of supported types of key management
 *	that can be offloaded to the device.  See
 *	nl80211_key_mgmt_offload_support.
 *	Only valid when WIPHY_FLAG_HAS_KEY_MGMT_OFFLOAD is set.
 *	nl80211_key_mgmt_offload_support.  Only valid when
 *	WIPHY_FLAG_HAS_KEY_MGMT_OFFLOAD is set.
 * @key_derive_offload_support: Bitmap of supported key derivations used as
 *	part of key management offload.  See nl80211_key_derive_offload_support.
 *	Only valid when WIPHY_FLAG_HAS_KEY_MGMT_OFFLOAD is set.
+13 −5
Original line number Diff line number Diff line
@@ -700,7 +700,9 @@
 * @NL80211_CMD_KEY_MGMT_SET_PMK: Used to pass the PMK to the device for
 *	key management offload.  This will be used in the case of key
 *	management offload on an already established PMKSA.  The PMK is passed
 *	in NL80211_ATTR_PMK once it is known by the supplicant.
 *	in NL80211_ATTR_PMK once it is known by the supplicant.  If connection
 *	is FT (802.11r) enabled with 802.1X, then the second 256 bits of the
 *	MSK is passed instead of the PMK.
 *
 * @NL80211_CMD_MAX: highest used command number
 * @__NL80211_CMD_AFTER_LAST: internal use
@@ -4000,11 +4002,15 @@ enum nl80211_tdls_peer_capability {
 * @NL80211_KEY_MGMT_OFFLOAD_SUPPORT_PMKSA: Key management on already
 *	established PMKSA.  The PMK will be passed using
 *	NL80211_CMD_KEY_MGMT_SET_PMK once it is known.
 * @NL80211_KEY_MGMT_OFFLOAD_SUPPORT_FT_802_1X: 802.11r (FT) with
 *	802.1X.  The second 256 bits of the MSK is passed using
 *	NL80211_CMD_KEY_MGMT_SET_PMK once it is known.
 */
enum nl80211_key_mgmt_offload_support {
	NL80211_KEY_MGMT_OFFLOAD_SUPPORT_PSK		= 1 << 0,
	NL80211_KEY_MGMT_OFFLOAD_SUPPORT_FT_PSK		= 1 << 1,
	NL80211_KEY_MGMT_OFFLOAD_SUPPORT_PMKSA		= 1 << 2,
	NL80211_KEY_MGMT_OFFLOAD_SUPPORT_FT_802_1X	= 1 << 3,
};

/**
@@ -4015,9 +4021,11 @@ enum nl80211_key_mgmt_offload_support {
 * by default for all supported key management offload types.
 *
 * @NL80211_KEY_DERIVE_OFFLOAD_SUPPORT_IGTK: IGTK key derivation.
 * @NL80211_KEY_DERIVE_OFFLOAD_SUPPORT_SHA256: SHA-256 key derivation.
 */
enum nl80211_key_derive_offload_support {
	NL80211_KEY_DERIVE_OFFLOAD_SUPPORT_IGTK		= 1 << 0,
	NL80211_KEY_DERIVE_OFFLOAD_SUPPORT_SHA256	= 1 << 1,
};

/**
+1 −0
Original line number Diff line number Diff line
@@ -794,6 +794,7 @@ void cfg80211_process_wdev_events(struct wireless_dev *wdev)
			__cfg80211_authorization_event(wdev->netdev,
						       ev->au.auth_status,
						       ev->au.key_replay_ctr);
			break;
		}
		wdev_unlock(wdev);

+1 −1

File changed.

Contains only whitespace changes.