From: Johannes Berg <[email protected]>

When not connected, anything but WEP keys shouldn't be allowed to be
configured for later - only static WEP keys make sense at this point.
Change wext to reject anything else just like nl80211 does.

Signed-off-by: Johannes Berg <[email protected]>
---
 net/wireless/wext-compat.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/net/wireless/wext-compat.c b/net/wireless/wext-compat.c
index 9f27221c8913..e45a76449b43 100644
--- a/net/wireless/wext-compat.c
+++ b/net/wireless/wext-compat.c
@@ -487,6 +487,9 @@ static int __cfg80211_set_encryption(struct 
cfg80211_registered_device *rdev,
        err = 0;
        if (wdev->current_bss)
                err = rdev_add_key(rdev, dev, idx, pairwise, addr, params);
+       else if (params->cipher != WLAN_CIPHER_SUITE_WEP40 &&
+                params->cipher != WLAN_CIPHER_SUITE_WEP104)
+               return -EINVAL;
        if (err)
                return err;
 
-- 
2.8.1

Reply via email to