cfg80211: support 4-way handshake offloading for WPA/WPA2-PSK
authorEliad Peller <eliad@wizery.com>
Fri, 9 Jun 2017 12:08:42 +0000 (13:08 +0100)
committerChristian Lamparter <chunkeey@gmail.com>
Sun, 5 Nov 2017 17:10:05 +0000 (18:10 +0100)
Let drivers advertise support for station-mode 4-way handshake
offloading with a new NL80211_EXT_FEATURE_4WAY_HANDSHAKE_STA_PSK flag.

Extend use of NL80211_ATTR_PMK attribute indicating it might be passed
as part of NL80211_CMD_CONNECT command, and contain the PSK (which is
the PMK, hence the name.)

The driver/device is assumed to handle the 4-way handshake by
itself in this case (including key derivations, etc.), instead
of relying on the supplicant.

This patch is somewhat based on this one (by Vladimir Kondratiev):
https://patchwork.kernel.org/patch/1309561/.

Signed-off-by: Vladimir Kondratiev <qca_vkondrat@qca.qualcomm.com>
Signed-off-by: Eliad Peller <eliadx.peller@intel.com>
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
[arend.vanspriel@broadcom.com rebase dealing with existing ATTR_PMK]
Signed-off-by: Arend van Spriel <arend.vanspriel@broadcom.com>
[reword NL80211_EXT_FEATURE_4WAY_HANDSHAKE_STA_PSK docs to indicate
that this offload might be required]
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
include/linux/ieee80211.h

index b97ea2ea14d59c91bec9ecabdf832d19be985845..f78c8f096c0bb1dc8cc423b19104741cf9c05bb6 100644 (file)
@@ -2418,6 +2418,7 @@ enum ieee80211_sa_query_action {
 #define WLAN_MAX_KEY_LEN               32
 
 #define WLAN_PMKID_LEN                 16
+#define WLAN_PMK_LEN                   32
 
 #define WLAN_OUI_WFA                   0x506f9a
 #define WLAN_OUI_TYPE_WFA_P2P          9