36 lines
1.0 KiB
Diff
36 lines
1.0 KiB
Diff
--- a/src/drivers/driver_nl80211.c
|
|
+++ b/src/drivers/driver_nl80211.c
|
|
@@ -3008,12 +3008,12 @@ static int wpa_driver_nl80211_del_beacon
|
|
return 0;
|
|
|
|
wpa_printf(MSG_DEBUG, "nl80211: Remove beacon (ifindex=%d)",
|
|
- drv->ifindex);
|
|
+ bss->ifindex);
|
|
link->beacon_set = 0;
|
|
link->freq = 0;
|
|
|
|
nl80211_put_wiphy_data_ap(bss);
|
|
- msg = nl80211_drv_msg(drv, 0, NL80211_CMD_DEL_BEACON);
|
|
+ msg = nl80211_bss_msg(bss, 0, NL80211_CMD_DEL_BEACON);
|
|
if (!msg)
|
|
return -ENOBUFS;
|
|
|
|
@@ -6100,7 +6100,7 @@ static void nl80211_teardown_ap(struct i
|
|
nl80211_mgmt_unsubscribe(bss, "AP teardown");
|
|
|
|
nl80211_put_wiphy_data_ap(bss);
|
|
- bss->flink->beacon_set = 0;
|
|
+ wpa_driver_nl80211_del_beacon_all(bss);
|
|
}
|
|
|
|
|
|
@@ -8859,8 +8859,6 @@ static int wpa_driver_nl80211_if_remove(
|
|
} else {
|
|
wpa_printf(MSG_DEBUG, "nl80211: First BSS - reassign context");
|
|
nl80211_teardown_ap(bss);
|
|
- if (!bss->added_if && !drv->first_bss->next)
|
|
- wpa_driver_nl80211_del_beacon_all(bss);
|
|
nl80211_destroy_bss(bss);
|
|
if (!bss->added_if)
|
|
i802_set_iface_flags(bss, 0);
|