From 55c30e8aba64cb5fc4bcdc3598a1782fcbb026f9 Mon Sep 17 00:00:00 2001 From: Aditya Kumar Singh Date: Wed, 6 Mar 2024 12:09:14 +0530 Subject: [PATCH] nl80211: Remove AP MLD links while removing the interface When the interface was removed, the added links were not removed. While removing the interface, kernel has removed the stale links but hostapd has not. This is wrong since hostapd should remove and do the clean ups properly while removing the interface. Hence, remove the links when interface is removed. Signed-off-by: Aditya Kumar Singh --- src/drivers/driver_nl80211.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/drivers/driver_nl80211.c b/src/drivers/driver_nl80211.c index e4695d0b2..a9edf66ef 100644 --- a/src/drivers/driver_nl80211.c +++ b/src/drivers/driver_nl80211.c @@ -8965,6 +8965,7 @@ static int wpa_driver_nl80211_if_remove(struct i802_bss *bss, tbss->next = bss->next; /* Unsubscribe management frames */ nl80211_teardown_ap(bss); + nl80211_remove_links(bss); nl80211_destroy_bss(bss); if (!bss->added_if) i802_set_iface_flags(bss, 0); @@ -8979,6 +8980,7 @@ static int wpa_driver_nl80211_if_remove(struct i802_bss *bss, } else { wpa_printf(MSG_DEBUG, "nl80211: First BSS - reassign context"); nl80211_teardown_ap(bss); + nl80211_remove_links(bss); if (!bss->added_if && !drv->first_bss->next) wpa_driver_nl80211_del_beacon_all(bss); nl80211_destroy_bss(bss);