nl80211: Allow SAE Authentication for NL80211_CMD_CONNECT

This commit allows SAE Authentication for NL80211_CMD_CONNECT
interface, provided host driver advertises the support.

Host drivers may offload the SAE authentication to user space
through NL80211_CMD_EXTERNAL_AUTH interface and thus expect
the user space to advertise support to handle offload through
NL80211_ATTR_EXTERNAL_AUTH_SUPPORT in NL80211_CMD_CONNECT
request. Such drivers should reject the connect request on no
offload support from user space.

Signed-off-by: Srinivas Dasari <dasaris@qti.qualcomm.com>
Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Git-commit: 10773a7c09b327d02144c7d181e6544b7015ffc7
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
CRs-Fixed: 2468738
Change-Id: I41b49228e88b32a35323c4dc8fa98e507a8a971d
Signed-off-by: Srinivas Dasari <dasaris@codeaurora.org>
Signed-off-by: Jiachao Wu <jiacwu@codeaurora.org>
Signed-off-by: Min Liu <minliu@codeaurora.org>
Signed-off-by: stonez <stonez@codeaurora.org>
This commit is contained in:
Srinivas Dasari 2018-05-03 18:47:11 +08:00 committed by codeworkx
parent 3edd7e38cf
commit 18716efa40

View file

@ -3678,8 +3678,8 @@ static bool nl80211_valid_auth_type(struct cfg80211_registered_device *rdev,
return false; return false;
return true; return true;
case NL80211_CMD_CONNECT: case NL80211_CMD_CONNECT:
/* SAE not supported yet */ if (!(rdev->wiphy.features & NL80211_FEATURE_SAE) &&
if (auth_type == NL80211_AUTHTYPE_SAE) auth_type == NL80211_AUTHTYPE_SAE)
return false; return false;
/* FILS with SK PFS or PK not supported yet */ /* FILS with SK PFS or PK not supported yet */
if (auth_type == NL80211_AUTHTYPE_FILS_SK_PFS || if (auth_type == NL80211_AUTHTYPE_FILS_SK_PFS ||