Browse Source

WPS: Ignore credentials for unsupported authentication type

The current implementation does not support WPA/WPA2-Enterprise
credentials. Ignore any credential that is using unsupported
authentication type to avoid potential issues with partially configured
network blocks.
Jouni Malinen 16 years ago
parent
commit
f286077de2
1 changed files with 10 additions and 0 deletions
  1. 10 0
      wpa_supplicant/wps_supplicant.c

+ 10 - 0
wpa_supplicant/wps_supplicant.c

@@ -58,6 +58,16 @@ static int wpa_supplicant_wps_cred(void *ctx,
 
 	wpa_msg(wpa_s, MSG_INFO, WPS_EVENT_CRED_RECEIVED);
 
+	if (cred->auth_type != WPS_AUTH_OPEN &&
+	    cred->auth_type != WPS_AUTH_SHARED &&
+	    cred->auth_type != WPS_AUTH_WPAPSK &&
+	    cred->auth_type != WPS_AUTH_WPA2PSK) {
+		wpa_printf(MSG_DEBUG, "WPS: Ignored credentials for "
+			   "unsupported authentication type %d",
+			   cred->auth_type);
+		return 0;
+	}
+
 	if (ssid && (ssid->key_mgmt & WPA_KEY_MGMT_WPS)) {
 		wpa_printf(MSG_DEBUG, "WPS: Replace WPS network block based "
 			   "on the received credential");