]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
Cancel channel_list_update_timeout() in hostapd_cleanup_iface_partial()
authorFelix Fietkau <nbd@nbd.name>
Thu, 4 Apr 2024 10:52:12 +0000 (12:52 +0200)
committerJouni Malinen <j@w1.fi>
Mon, 15 Apr 2024 20:02:03 +0000 (23:02 +0300)
This fixes a crash when disabling an interface during channel list
update.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
src/ap/hostapd.c

index 07bbf29dea6ca7cfde99aa4aeec09adcbd1f5c44..c08be0a0dc0653cac3be732f7dcf61572ba6b09d 100644 (file)
@@ -685,6 +685,7 @@ static void sta_track_deinit(struct hostapd_iface *iface)
 void hostapd_cleanup_iface_partial(struct hostapd_iface *iface)
 {
        wpa_printf(MSG_DEBUG, "%s(%p)", __func__, iface);
+       eloop_cancel_timeout(channel_list_update_timeout, iface, NULL);
 #ifdef NEED_AP_MLME
        hostapd_stop_setup_timers(iface);
 #endif /* NEED_AP_MLME */
@@ -714,7 +715,6 @@ void hostapd_cleanup_iface_partial(struct hostapd_iface *iface)
 static void hostapd_cleanup_iface(struct hostapd_iface *iface)
 {
        wpa_printf(MSG_DEBUG, "%s(%p)", __func__, iface);
-       eloop_cancel_timeout(channel_list_update_timeout, iface, NULL);
        eloop_cancel_timeout(hostapd_interface_setup_failure_handler, iface,
                             NULL);