diff options
author | Johannes Berg <johannes@sipsolutions.net> | 2009-10-20 15:08:12 +0900 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2009-10-27 16:29:47 -0400 |
commit | 2ef6e4440926668cfa9eac4b79e63528ebcbe0c1 (patch) | |
tree | 6db9ef36346c2b263d7bed07fed99cffd6fb2a44 | |
parent | d419b9f0fa69e79ccba3e5e79a58a52ae0c2ed6a (diff) | |
download | op-kernel-dev-2ef6e4440926668cfa9eac4b79e63528ebcbe0c1.zip op-kernel-dev-2ef6e4440926668cfa9eac4b79e63528ebcbe0c1.tar.gz |
mac80211: keep auth state when assoc fails
When association fails, we should stay authenticated,
which in mac80211 is represented by the existence of
the mlme work struct, so we cannot free that, instead
we need to just set it to idle.
(Brought to you by the hacking session at Kernel Summit 2009 in Tokyo,
Japan. -- JWL)
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r-- | net/mac80211/mlme.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c index 8d26e9b..dc5049d 100644 --- a/net/mac80211/mlme.c +++ b/net/mac80211/mlme.c @@ -1457,8 +1457,7 @@ ieee80211_rx_mgmt_assoc_resp(struct ieee80211_sub_if_data *sdata, if (status_code != WLAN_STATUS_SUCCESS) { printk(KERN_DEBUG "%s: AP denied association (code=%d)\n", sdata->dev->name, status_code); - list_del(&wk->list); - kfree(wk); + wk->state = IEEE80211_MGD_STATE_IDLE; return RX_MGMT_CFG80211_ASSOC; } |