nl80211: Work around mac80211 limitation on (re)auth when authenticated
authorJouni Malinen <jouni.malinen@atheros.com>
Mon, 12 Oct 2009 06:39:55 +0000 (09:39 +0300)
committerJouni Malinen <j@w1.fi>
Mon, 12 Oct 2009 06:39:55 +0000 (09:39 +0300)
commit6d6f4bb87f33278aed133875d0d561eb55d7ae59
tree62b9a3f4e0c4298a57de3564f88a8eee50d9a585
parent786c4fee9d7fbea03ac07a1974b895cd701e8a1b
nl80211: Work around mac80211 limitation on (re)auth when authenticated

mac80211 does not currently allow (re)authentication when we are already
authenticated. In order to work around this, force deauthentication if
nl80211 authentication command fails with EALREADY. Unfortunately, the
workaround code in driver_nl80211.c alone is not enough since the
following disconnection event would clear wpa_supplicant authentication
state. To handle this, add some code to restore authentication state
when using userspace SME.

This workaround will hopefully become unnecessary in some point should
mac80211 start accepting new authentication requests even when in
authenticated state.
src/drivers/driver_nl80211.c
wpa_supplicant/events.c