developer | e35b8e4 | 2023-10-16 11:04:00 +0800 | [diff] [blame] | 1 | From: Felix Fietkau <nbd@nbd.name> |
| 2 | Date: Wed, 20 Sep 2023 13:41:10 +0200 |
| 3 | Subject: [PATCH] hostapd: cancel channel_list_update_timeout in |
| 4 | hostapd_cleanup_iface_partial |
| 5 | |
| 6 | Fixes a crash when disabling an interface during channel list update |
| 7 | |
| 8 | Signed-off-by: Felix Fietkau <nbd@nbd.name> |
| 9 | --- |
| 10 | |
| 11 | --- a/src/ap/hostapd.c |
| 12 | +++ b/src/ap/hostapd.c |
| 13 | @@ -569,6 +569,7 @@ static void sta_track_deinit(struct host |
| 14 | void hostapd_cleanup_iface_partial(struct hostapd_iface *iface) |
| 15 | { |
| 16 | wpa_printf(MSG_DEBUG, "%s(%p)", __func__, iface); |
| 17 | + eloop_cancel_timeout(channel_list_update_timeout, iface, NULL); |
| 18 | #ifdef NEED_AP_MLME |
| 19 | hostapd_stop_setup_timers(iface); |
| 20 | #endif /* NEED_AP_MLME */ |
| 21 | @@ -598,7 +599,6 @@ void hostapd_cleanup_iface_partial(struc |
| 22 | static void hostapd_cleanup_iface(struct hostapd_iface *iface) |
| 23 | { |
| 24 | wpa_printf(MSG_DEBUG, "%s(%p)", __func__, iface); |
| 25 | - eloop_cancel_timeout(channel_list_update_timeout, iface, NULL); |
| 26 | eloop_cancel_timeout(hostapd_interface_setup_failure_handler, iface, |
| 27 | NULL); |
| 28 | |