WPS: Ignore credentials for unsupported authentication type
authorJouni Malinen <j@w1.fi>
Sat, 17 Jan 2009 19:45:51 +0000 (21:45 +0200)
committerJouni Malinen <j@w1.fi>
Sat, 17 Jan 2009 19:45:51 +0000 (21:45 +0200)
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.

wpa_supplicant/wps_supplicant.c

index 8504851..a69dfec 100644 (file)
@@ -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");