[MAC80211]: STA reassociation improvements
authorDaniel Drake <dsd@gentoo.org>
Fri, 27 Jul 2007 13:43:23 +0000 (15:43 +0200)
committerDavid S. Miller <davem@sunset.davemloft.net>
Wed, 10 Oct 2007 23:47:37 +0000 (16:47 -0700)
commit8a69aa93d54cb56017159b08512c80ede2263060
tree4fbb506416233a10ae4f16a14fe6466ae7742b70
parentbe8755e1804d6f60e6a96a46ac6bc46ce6dfca53
[MAC80211]: STA reassociation improvements

My cheapy D-Link AP behaves strangely w.r.t reassociations.

The following sequence of commands causes me to lose association and to be
unable to regain it:

ifconfig eth8 down
ifconfig eth8 up
iwconfig eth8 essid <x>

This is because mac80211 tries to reassociate, rather than just associate.
My AP replies with an association response (not a reassociation response...)
denying the association with code 12: "Association denied due to reason
outside the scope of this standard"

mac80211 tries this reassociation another 4 times or so before finally giving
up.

I see 2 problems here:
 1. bringing the interface down and up again should be resetting interface state
    i.e. after the interface is brought down, it should have no memory of if or
         where it was previously associated
 2. after the first reassociation fails, mac80211 should fall back to
    standard association for the next attempt

Signed-off-by: Daniel Drake <dsd@gentoo.org>
Signed-off-by: Jiri Benc <jbenc@suse.cz>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
net/mac80211/ieee80211.c
net/mac80211/ieee80211_sta.c