diff mbox

mac80211: clear SSID when stoping AP

Message ID 1365594465-6405-1-git-send-email-marek.puzyniak@tieto.com (mailing list archive)
State Not Applicable, archived
Headers show

Commit Message

Marek Puzyniak April 10, 2013, 11:47 a.m. UTC
When AP interface was stopped ssid and ssid_len from bss configuration
was not cleared. This caused a problem when after AP interface was stopped
another AP with shorter ssid was created. Previous ssid was not
overwriten by new one shorter.

Signed-off-by: Marek Puzyniak <marek.puzyniak@tieto.com>
---
 net/mac80211/cfg.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

Comments

Johannes Berg April 10, 2013, 12:38 p.m. UTC | #1
On Wed, 2013-04-10 at 13:47 +0200, Marek Puzyniak wrote:
> When AP interface was stopped ssid and ssid_len from bss configuration
> was not cleared. This caused a problem when after AP interface was stopped
> another AP with shorter ssid was created. Previous ssid was not
> overwriten by new one shorter.

I'll take the patch, sans the memset. If this was causing you trouble
you're most likely treating the SSID as a string, which it is not, so
you need to fix your driver.

johannes

--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/net/mac80211/cfg.c b/net/mac80211/cfg.c
index c50c194..5c4cb08 100644
--- a/net/mac80211/cfg.c
+++ b/net/mac80211/cfg.c
@@ -1048,6 +1048,8 @@  static int ieee80211_stop_ap(struct wiphy *wiphy, struct net_device *dev)
 	ieee80211_free_keys(sdata);
 
 	sdata->vif.bss_conf.enable_beacon = false;
+	sdata->vif.bss_conf.ssid_len = 0;
+	memset(sdata->vif.bss_conf.ssid, 0, IEEE80211_MAX_SSID_LEN);
 	clear_bit(SDATA_STATE_OFFCHANNEL_BEACON_STOPPED, &sdata->state);
 	ieee80211_bss_info_change_notify(sdata, BSS_CHANGED_BEACON_ENABLED);