diff options
Diffstat (limited to 'net/mac80211/mlme.c')
-rw-r--r-- | net/mac80211/mlme.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c index 87743e47a05f..b7f9c60793dd 100644 --- a/net/mac80211/mlme.c +++ b/net/mac80211/mlme.c | |||
@@ -977,6 +977,10 @@ static void ieee80211_set_associated(struct ieee80211_sub_if_data *sdata, | |||
977 | * changed or not. | 977 | * changed or not. |
978 | */ | 978 | */ |
979 | bss_info_changed |= BSS_CHANGED_BASIC_RATES; | 979 | bss_info_changed |= BSS_CHANGED_BASIC_RATES; |
980 | |||
981 | /* And the BSSID changed - we're associated now */ | ||
982 | bss_info_changed |= BSS_CHANGED_BSSID; | ||
983 | |||
980 | ieee80211_bss_info_change_notify(sdata, bss_info_changed); | 984 | ieee80211_bss_info_change_notify(sdata, bss_info_changed); |
981 | 985 | ||
982 | /* will be same as sdata */ | 986 | /* will be same as sdata */ |
@@ -1176,6 +1180,9 @@ static void ieee80211_set_disassoc(struct ieee80211_sub_if_data *sdata, | |||
1176 | } | 1180 | } |
1177 | 1181 | ||
1178 | ieee80211_hw_config(local, config_changed); | 1182 | ieee80211_hw_config(local, config_changed); |
1183 | |||
1184 | /* And the BSSID changed -- not very interesting here */ | ||
1185 | changed |= BSS_CHANGED_BSSID; | ||
1179 | ieee80211_bss_info_change_notify(sdata, changed); | 1186 | ieee80211_bss_info_change_notify(sdata, changed); |
1180 | 1187 | ||
1181 | rcu_read_lock(); | 1188 | rcu_read_lock(); |
@@ -2481,9 +2488,6 @@ int ieee80211_sta_set_bssid(struct ieee80211_sub_if_data *sdata, u8 *bssid) | |||
2481 | ifmgd->flags &= ~IEEE80211_STA_BSSID_SET; | 2488 | ifmgd->flags &= ~IEEE80211_STA_BSSID_SET; |
2482 | } | 2489 | } |
2483 | 2490 | ||
2484 | if (netif_running(sdata->dev)) | ||
2485 | ieee80211_bss_info_change_notify(sdata, BSS_CHANGED_BSSID); | ||
2486 | |||
2487 | return ieee80211_sta_commit(sdata); | 2491 | return ieee80211_sta_commit(sdata); |
2488 | } | 2492 | } |
2489 | 2493 | ||