aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEyal Shapira <eyal@wizery.com>2012-06-12 14:27:02 +0300
committerArik Nemtsov <arik@wizery.com>2012-07-30 17:48:05 +0300
commit2e35a027db58930422b191fe361d3220a2530d71 (patch)
tree6c2525349d7330954dab1a4d3c80063fd95477d6
parent91f83626bab08f68962ca1df923fc683b6f8c95f (diff)
downloadexternal_wpa_supplicant_8_ti-2e35a027db58930422b191fe361d3220a2530d71.zip
external_wpa_supplicant_8_ti-2e35a027db58930422b191fe361d3220a2530d71.tar.gz
external_wpa_supplicant_8_ti-2e35a027db58930422b191fe361d3220a2530d71.tar.bz2
SME: Handle Netgear APs WEP shared quirks
Some Netgear APs like WNAP210 have a quirk behavior when configured for WEP Shared. They send an auth response with algo SHARED and status code NOT_SUPPORTED_AUTH_ALG (13) when being sent a request made with auth algo OPEN. Handle such APs by re-trying SHARED auth in this case. Signed-off-by: Eyal Shapira <eyal@wizery.com>
-rw-r--r--wpa_supplicant/sme.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/wpa_supplicant/sme.c b/wpa_supplicant/sme.c
index a82cb95..9cd112b 100644
--- a/wpa_supplicant/sme.c
+++ b/wpa_supplicant/sme.c
@@ -346,9 +346,18 @@ void sme_event_auth(struct wpa_supplicant *wpa_s, union wpa_event_data *data)
return;
case WLAN_AUTH_SHARED_KEY:
- wpa_s->current_ssid->auth_alg = WPA_AUTH_ALG_LEAP;
+ if (wpa_s->current_ssid->auth_alg == WPA_AUTH_ALG_OPEN) {
+ wpa_s->current_ssid->auth_alg =
+ WPA_AUTH_ALG_SHARED;
+ wpa_dbg(wpa_s, MSG_DEBUG,
+ "SME: Trying SHARED auth");
+ } else {
+ wpa_s->current_ssid->auth_alg =
+ WPA_AUTH_ALG_LEAP;
+ wpa_dbg(wpa_s, MSG_DEBUG,
+ "SME: Trying LEAP auth");
+ }
- wpa_dbg(wpa_s, MSG_DEBUG, "SME: Trying LEAP auth");
wpa_supplicant_associate(wpa_s, wpa_s->current_bss,
wpa_s->current_ssid);
return;