diff options
author | sam <sam@FreeBSD.org> | 2007-06-16 05:13:48 +0000 |
---|---|---|
committer | sam <sam@FreeBSD.org> | 2007-06-16 05:13:48 +0000 |
commit | 4ee0fbbf170a572305b7a954d5250d5801e12939 (patch) | |
tree | e2a745b99ebfbabf41407c369ec8d998fa0ca252 /sys/net80211/ieee80211_proto.c | |
parent | a8415c5a0d7d39fe501a93e2f31b2532cf6dfd91 (diff) | |
download | FreeBSD-src-4ee0fbbf170a572305b7a954d5250d5801e12939.zip FreeBSD-src-4ee0fbbf170a572305b7a954d5250d5801e12939.tar.gz |
Correct state machine handling of AUTH -> AUTH transitions that pass
through wpa_supplcant. If a sta is deauth'd (e.g. due to inactivity)
with roaming mode set to manual then a subsequent MLME assoc request
will be incorrectly handled and the station will never reauthenticate.
To fix this interpret a reason code of zero as sufficient to send an
auth request frame.
Diffstat (limited to 'sys/net80211/ieee80211_proto.c')
-rw-r--r-- | sys/net80211/ieee80211_proto.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/net80211/ieee80211_proto.c b/sys/net80211/ieee80211_proto.c index 40fef21..4a2b8f9 100644 --- a/sys/net80211/ieee80211_proto.c +++ b/sys/net80211/ieee80211_proto.c @@ -1065,6 +1065,7 @@ static void sta_authretry(struct ieee80211com *ic, struct ieee80211_node *ni, int reason) { switch (reason) { + case IEEE80211_STATUS_SUCCESS: case IEEE80211_STATUS_TIMEOUT: case IEEE80211_REASON_ASSOC_EXPIRE: case IEEE80211_REASON_NOT_AUTHED: |