Fix authentication algorithm negotiation in SME code

Commit 6ac4b15ef8 (wpa_radio work for
connection) caused a regression for cases where multiple auth_alg values
are set in a network block and wpa_supplicant-based SME is supposed to
iterate through them. The connection radio work was not terminated when
receiving authentication failure and this resulted in the following
authentication attempt failing.

Signed-hostap: Jouni Malinen <j@w1.fi>
This commit is contained in:
Jouni Malinen 2014-01-31 23:31:26 +02:00
parent 1412beeee9
commit d950477913

View file

@ -636,6 +636,8 @@ void sme_event_auth(struct wpa_supplicant *wpa_s, union wpa_event_data *data)
return; return;
} }
wpas_connect_work_done(wpa_s);
switch (data->auth.auth_type) { switch (data->auth.auth_type) {
case WLAN_AUTH_OPEN: case WLAN_AUTH_OPEN:
wpa_s->current_ssid->auth_alg = WPA_AUTH_ALG_SHARED; wpa_s->current_ssid->auth_alg = WPA_AUTH_ALG_SHARED;