Commit 0e47901d authored by Johannes Berg's avatar Johannes Berg

nl80211: really allow client-only BIGTK support

My previous commit here was wrong, it didn't check the new
flag in two necessary places, so things didn't work. Fix that.

Fixes: 155d7c73 ("nl80211: allow client-only BIGTK support")
Link: https://lore.kernel.org/r/20200528213443.993f108e96ca.I0086ae42d672379380d04ac5effb2f3d5135731b@changeidSigned-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
parent d1a1646c
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
* (for nl80211's connect() and wext) * (for nl80211's connect() and wext)
* *
* Copyright 2009 Johannes Berg <johannes@sipsolutions.net> * Copyright 2009 Johannes Berg <johannes@sipsolutions.net>
* Copyright (C) 2009 Intel Corporation. All rights reserved. * Copyright (C) 2009, 2020 Intel Corporation. All rights reserved.
* Copyright 2017 Intel Deutschland GmbH * Copyright 2017 Intel Deutschland GmbH
*/ */
...@@ -1118,7 +1118,10 @@ void __cfg80211_disconnected(struct net_device *dev, const u8 *ie, ...@@ -1118,7 +1118,10 @@ void __cfg80211_disconnected(struct net_device *dev, const u8 *ie,
if (wiphy_ext_feature_isset( if (wiphy_ext_feature_isset(
wdev->wiphy, wdev->wiphy,
NL80211_EXT_FEATURE_BEACON_PROTECTION)) NL80211_EXT_FEATURE_BEACON_PROTECTION) ||
wiphy_ext_feature_isset(
wdev->wiphy,
NL80211_EXT_FEATURE_BEACON_PROTECTION_CLIENT))
max_key_idx = 7; max_key_idx = 7;
for (i = 0; i <= max_key_idx; i++) for (i = 0; i <= max_key_idx; i++)
rdev_del_key(rdev, dev, i, false, NULL); rdev_del_key(rdev, dev, i, false, NULL);
......
...@@ -242,7 +242,9 @@ int cfg80211_validate_key_settings(struct cfg80211_registered_device *rdev, ...@@ -242,7 +242,9 @@ int cfg80211_validate_key_settings(struct cfg80211_registered_device *rdev,
int max_key_idx = 5; int max_key_idx = 5;
if (wiphy_ext_feature_isset(&rdev->wiphy, if (wiphy_ext_feature_isset(&rdev->wiphy,
NL80211_EXT_FEATURE_BEACON_PROTECTION)) NL80211_EXT_FEATURE_BEACON_PROTECTION) ||
wiphy_ext_feature_isset(&rdev->wiphy,
NL80211_EXT_FEATURE_BEACON_PROTECTION_CLIENT))
max_key_idx = 7; max_key_idx = 7;
if (key_idx < 0 || key_idx > max_key_idx) if (key_idx < 0 || key_idx > max_key_idx)
return -EINVAL; return -EINVAL;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment