aboutsummaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
Diffstat (limited to 'net')
-rw-r--r--net/wireless/wext-compat.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/net/wireless/wext-compat.c b/net/wireless/wext-compat.c
index aa80c0c4efd4..e6731bf55062 100644
--- a/net/wireless/wext-compat.c
+++ b/net/wireless/wext-compat.c
@@ -880,9 +880,19 @@ static int cfg80211_set_wpa_version(struct wireless_dev *wdev, u32 wpa_versions)
880 wdev->wext.connect.crypto.wpa_versions = 0; 880 wdev->wext.connect.crypto.wpa_versions = 0;
881 881
882 if (wpa_versions & ~(IW_AUTH_WPA_VERSION_WPA | 882 if (wpa_versions & ~(IW_AUTH_WPA_VERSION_WPA |
883 IW_AUTH_WPA_VERSION_WPA2)) 883 IW_AUTH_WPA_VERSION_WPA2|
884 IW_AUTH_WPA_VERSION_DISABLED))
884 return -EINVAL; 885 return -EINVAL;
885 886
887 if ((wpa_versions & IW_AUTH_WPA_VERSION_DISABLED) &&
888 (wpa_versions & (IW_AUTH_WPA_VERSION_WPA|
889 IW_AUTH_WPA_VERSION_WPA2)))
890 return -EINVAL;
891
892 if (wpa_versions & IW_AUTH_WPA_VERSION_DISABLED)
893 wdev->wext.connect.crypto.wpa_versions &=
894 ~(NL80211_WPA_VERSION_1|NL80211_WPA_VERSION_2);
895
886 if (wpa_versions & IW_AUTH_WPA_VERSION_WPA) 896 if (wpa_versions & IW_AUTH_WPA_VERSION_WPA)
887 wdev->wext.connect.crypto.wpa_versions |= 897 wdev->wext.connect.crypto.wpa_versions |=
888 NL80211_WPA_VERSION_1; 898 NL80211_WPA_VERSION_1;