aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/ibss.c
diff options
context:
space:
mode:
authorJohannes Berg <johannes@sipsolutions.net>2010-04-28 11:40:43 -0400
committerJohn W. Linville <linville@tuxdriver.com>2010-04-28 16:50:29 -0400
commit8fc214ba958648ab111a173f2db7b0e1dfed5b11 (patch)
tree7ca4b8137b8bcbf07f7cf87526c5179e900dee70 /net/mac80211/ibss.c
parent76f273640134f3eb8257179cd5b3bc6ba5fe4a96 (diff)
mac80211: notify driver about IBSS status
Some drivers (e.g. iwlwifi) need to know and try to figure it out based on other things, but making it explicit is definitely better. Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211/ibss.c')
-rw-r--r--net/mac80211/ibss.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/net/mac80211/ibss.c b/net/mac80211/ibss.c
index 01974c2510a8..a87e309e3b99 100644
--- a/net/mac80211/ibss.c
+++ b/net/mac80211/ibss.c
@@ -170,6 +170,8 @@ static void __ieee80211_sta_join_ibss(struct ieee80211_sub_if_data *sdata,
170 bss_change |= BSS_CHANGED_BSSID; 170 bss_change |= BSS_CHANGED_BSSID;
171 bss_change |= BSS_CHANGED_BEACON; 171 bss_change |= BSS_CHANGED_BEACON;
172 bss_change |= BSS_CHANGED_BEACON_ENABLED; 172 bss_change |= BSS_CHANGED_BEACON_ENABLED;
173 bss_change |= BSS_CHANGED_IBSS;
174 sdata->vif.bss_conf.ibss_joined = true;
173 ieee80211_bss_info_change_notify(sdata, bss_change); 175 ieee80211_bss_info_change_notify(sdata, bss_change);
174 176
175 ieee80211_sta_def_wmm_params(sdata, sband->n_bitrates, supp_rates); 177 ieee80211_sta_def_wmm_params(sdata, sband->n_bitrates, supp_rates);
@@ -950,7 +952,9 @@ int ieee80211_ibss_leave(struct ieee80211_sub_if_data *sdata)
950 kfree(sdata->u.ibss.ie); 952 kfree(sdata->u.ibss.ie);
951 skb = sdata->u.ibss.presp; 953 skb = sdata->u.ibss.presp;
952 rcu_assign_pointer(sdata->u.ibss.presp, NULL); 954 rcu_assign_pointer(sdata->u.ibss.presp, NULL);
953 ieee80211_bss_info_change_notify(sdata, BSS_CHANGED_BEACON_ENABLED); 955 sdata->vif.bss_conf.ibss_joined = false;
956 ieee80211_bss_info_change_notify(sdata, BSS_CHANGED_BEACON_ENABLED |
957 BSS_CHANGED_IBSS);
954 synchronize_rcu(); 958 synchronize_rcu();
955 kfree_skb(skb); 959 kfree_skb(skb);
956 960