diff options
author | John W. Linville <linville@tuxdriver.com> | 2012-10-17 16:23:33 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2012-10-17 16:23:33 -0400 |
commit | 290eddc4b3661dc4dfa95d199e0be5788928b3b1 (patch) | |
tree | 2130a4aab73e43e08b6566b06211069a96a2ff22 /net/wireless/mlme.c | |
parent | 8f7b8db6e0557c8437adf9371e020cd89a7e85dc (diff) | |
parent | 3a40414f826a8f1096d9b94c4a53ef91b25ba28d (diff) |
Merge branch 'for-john' of git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211
Diffstat (limited to 'net/wireless/mlme.c')
-rw-r--r-- | net/wireless/mlme.c | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/net/wireless/mlme.c b/net/wireless/mlme.c index 8016fee0752..904a7f36832 100644 --- a/net/wireless/mlme.c +++ b/net/wireless/mlme.c @@ -457,20 +457,14 @@ int __cfg80211_mlme_deauth(struct cfg80211_registered_device *rdev, .reason_code = reason, .ie = ie, .ie_len = ie_len, + .local_state_change = local_state_change, }; ASSERT_WDEV_LOCK(wdev); - if (local_state_change) { - if (wdev->current_bss && - ether_addr_equal(wdev->current_bss->pub.bssid, bssid)) { - cfg80211_unhold_bss(wdev->current_bss); - cfg80211_put_bss(&wdev->current_bss->pub); - wdev->current_bss = NULL; - } - + if (local_state_change && (!wdev->current_bss || + !ether_addr_equal(wdev->current_bss->pub.bssid, bssid))) return 0; - } return rdev->ops->deauth(&rdev->wiphy, dev, &req); } |