summaryrefslogtreecommitdiff
path: root/net/wireless
diff options
context:
space:
mode:
authorVeerendranath Jakkam <vjakkam@codeaurora.org>2018-12-19 20:22:25 +0300
committerJohannes Berg <johannes.berg@intel.com>2019-01-25 16:05:31 +0300
commitab4dfa20534e32e48de6b761b42d943518fb26f7 (patch)
tree31d9f9db5d102a41f893a7bc007966f97ee897bb /net/wireless
parentc82c06ce43d372e0127982414539d1601d5f9ce3 (diff)
downloadlinux-ab4dfa20534e32e48de6b761b42d943518fb26f7.tar.xz
cfg80211: Allow drivers to advertise supported AKM suites
There was no such capability advertisement from the driver and thus the current user space has to assume the driver to support all the AKMs. While that may be the case with some drivers (e.g., mac80211-based ones), there are cfg80211-based drivers that implement SME and have constraints on which AKMs can be supported (e.g., such drivers may need an update to support SAE AKM using NL80211_CMD_EXTERNAL_AUTH). Allow such drivers to advertise the exact set of supported AKMs so that user space tools can determine what network profile options should be allowed to be configured. Signed-off-by: Veerendranath Jakkam <vjakkam@codeaurora.org> [pmsr data might be big, start a new netlink message section] Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/wireless')
-rw-r--r--net/wireless/nl80211.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/net/wireless/nl80211.c b/net/wireless/nl80211.c
index e5f9c9ceb6c9..eb4437fa0539 100644
--- a/net/wireless/nl80211.c
+++ b/net/wireless/nl80211.c
@@ -2279,6 +2279,15 @@ static int nl80211_send_wiphy(struct cfg80211_registered_device *rdev,
if (nl80211_send_pmsr_capa(rdev, msg))
goto nla_put_failure;
+ state->split_start++;
+ break;
+ case 15:
+ if (rdev->wiphy.akm_suites &&
+ nla_put(msg, NL80211_ATTR_AKM_SUITES,
+ sizeof(u32) * rdev->wiphy.n_akm_suites,
+ rdev->wiphy.akm_suites))
+ goto nla_put_failure;
+
/* done */
state->split_start = 0;
break;