Browse Source

nl80211: Fix connect command to not claim WPA if WPS is used

Such using params->wpa_ie to figure out whether the connection is for
WPA/WPA2 is not correct since that buffer is used also to add WPS IE. In
case of WPS, do not add NL80211_ATTR_WPA_VERSIONS to avoid confusing
drivers.
Jouni Malinen 13 years ago
parent
commit
a381f2a286
1 changed files with 2 additions and 1 deletions
  1. 2 1
      src/drivers/driver_nl80211.c

+ 2 - 1
src/drivers/driver_nl80211.c

@@ -4801,7 +4801,8 @@ static int wpa_driver_nl80211_connect(
 	NLA_PUT_U32(msg, NL80211_ATTR_AUTH_TYPE, type);
 
 skip_auth_type:
-	if (params->wpa_ie && params->wpa_ie_len) {
+	if (params->wpa_ie && params->wpa_ie_len &&
+	    params->key_mgmt_suite != KEY_MGMT_WPS) {
 		enum nl80211_wpa_versions ver;
 
 		if (params->wpa_ie[0] == WLAN_EID_RSN)