Re: [RFC PATCH 2/3] mac80211: disassociate when moving to new BSS

Johannes Berg
2008-09-06T22:26:44Z

[-- Attachment #1: Type: text/plain, Size: 1351 bytes --]

On Sun, 2008-09-07 at 01:14 +0300, Tomas Winkler wrote:
> This patch cleans current association when leaving to new BSS. this is
> needed as old configuration and data were still stored in station table
> and in low level driver, causing problems (e.g. 11n mlme) in new BSS
>
> Signed-off-by: Ron Rindjunsky <ron.rindjunsky@intel.com>
> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
> ---
> net/mac80211/mlme.c | 9 +++++++--
> 1 files changed, 7 insertions(+), 2 deletions(-)
>
> diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c
> index ba255e2..aa5367e 100644
> --- a/net/mac80211/mlme.c
> +++ b/net/mac80211/mlme.c
> @@ -3414,9 +3414,14 @@ void ieee80211_sta_req_auth(struct ieee80211_sub_if_data *sdata,
> return;
>
> if ((ifsta->flags & (IEEE80211_STA_BSSID_SET |
> - IEEE80211_STA_AUTO_BSSID_SEL)) &&
> + IEEE80211_STA_AUTO_BSSID_SEL)) &&
> (ifsta->flags & (IEEE80211_STA_SSID_SET |
> - IEEE80211_STA_AUTO_SSID_SEL))) {
> + IEEE80211_STA_AUTO_SSID_SEL))) {
> +
> + if (ifsta->state == IEEE80211_STA_MLME_ASSOCIATED)
> + ieee80211_set_disassoc(sdata, ifsta, 1, 1,
> + WLAN_REASON_DEAUTH_LEAVING);
> +
> set_bit(IEEE80211_STA_REQ_AUTH, &ifsta->request);
> queue_work(local->hw.workqueue, &ifsta->work);
> }

Looks sane to me

johannes

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 836 bytes --]