Remove leftover timeouts on cleanup

Signed-off-by: Alexandru Costache <alexandru.costache.100@gmail.com>
This commit is contained in:
Alexandru Costache 2014-05-12 19:14:55 +03:00 committed by Jouni Malinen
parent 4162db59ae
commit fb2ac53df1
6 changed files with 17 additions and 1 deletions

View file

@ -320,6 +320,8 @@ static void wpas_dbus_deinit_common(struct wpas_dbus_priv *priv)
if (priv->con) { if (priv->con) {
eloop_cancel_timeout(dispatch_initial_dbus_messages, eloop_cancel_timeout(dispatch_initial_dbus_messages,
priv->con, NULL); priv->con, NULL);
eloop_cancel_timeout(process_timeout, priv, ELOOP_ALL_CTX);
dbus_connection_set_watch_functions(priv->con, NULL, NULL, dbus_connection_set_watch_functions(priv->con, NULL, NULL,
NULL, NULL, NULL); NULL, NULL, NULL);
dbus_connection_set_timeout_functions(priv->con, NULL, NULL, dbus_connection_set_timeout_functions(priv->con, NULL, NULL,

View file

@ -920,3 +920,10 @@ void hs20_rx_deauth_imminent_notice(struct wpa_supplicant *wpa_s, u8 code,
now.sec + reauth_delay; now.sec + reauth_delay;
} }
} }
void hs20_deinit(struct wpa_supplicant *wpa_s)
{
eloop_cancel_timeout(hs20_continue_icon_fetch, wpa_s, NULL);
hs20_free_osu_prov(wpa_s);
}

View file

@ -35,5 +35,6 @@ int hs20_fetch_osu(struct wpa_supplicant *wpa_s);
void hs20_cancel_fetch_osu(struct wpa_supplicant *wpa_s); void hs20_cancel_fetch_osu(struct wpa_supplicant *wpa_s);
void hs20_icon_fetch_failed(struct wpa_supplicant *wpa_s); void hs20_icon_fetch_failed(struct wpa_supplicant *wpa_s);
void hs20_start_osu_scan(struct wpa_supplicant *wpa_s); void hs20_start_osu_scan(struct wpa_supplicant *wpa_s);
void hs20_deinit(struct wpa_supplicant *wpa_s);
#endif /* HS20_SUPPLICANT_H */ #endif /* HS20_SUPPLICANT_H */

View file

@ -125,6 +125,7 @@ static void wpas_p2p_fallback_to_go_neg(struct wpa_supplicant *wpa_s,
int group_added); int group_added);
static int wpas_p2p_stop_find_oper(struct wpa_supplicant *wpa_s); static int wpas_p2p_stop_find_oper(struct wpa_supplicant *wpa_s);
static void wpas_stop_listen(void *ctx); static void wpas_stop_listen(void *ctx);
static void wpas_p2p_psk_failure_removal(void *eloop_ctx, void *timeout_ctx);
/* /*
@ -3932,6 +3933,7 @@ void wpas_p2p_deinit(struct wpa_supplicant *wpa_s)
os_free(wpa_s->go_params); os_free(wpa_s->go_params);
wpa_s->go_params = NULL; wpa_s->go_params = NULL;
eloop_cancel_timeout(wpas_p2p_psk_failure_removal, wpa_s, NULL);
eloop_cancel_timeout(wpas_p2p_group_formation_timeout, wpa_s, NULL); eloop_cancel_timeout(wpas_p2p_group_formation_timeout, wpa_s, NULL);
eloop_cancel_timeout(wpas_p2p_join_scan, wpa_s, NULL); eloop_cancel_timeout(wpas_p2p_join_scan, wpa_s, NULL);
wpa_s->p2p_long_listen = 0; wpa_s->p2p_long_listen = 0;

View file

@ -498,7 +498,7 @@ static void wpa_supplicant_cleanup(struct wpa_supplicant *wpa_s)
wpa_s->last_scan_res = NULL; wpa_s->last_scan_res = NULL;
#ifdef CONFIG_HS20 #ifdef CONFIG_HS20
hs20_free_osu_prov(wpa_s); hs20_deinit(wpa_s);
#endif /* CONFIG_HS20 */ #endif /* CONFIG_HS20 */
} }

View file

@ -1465,6 +1465,10 @@ void wpas_wps_deinit(struct wpa_supplicant *wpa_s)
eloop_cancel_timeout(wpas_wps_reenable_networks_cb, wpa_s, NULL); eloop_cancel_timeout(wpas_wps_reenable_networks_cb, wpa_s, NULL);
wpas_wps_clear_ap_info(wpa_s); wpas_wps_clear_ap_info(wpa_s);
#ifdef CONFIG_P2P
eloop_cancel_timeout(wpas_p2p_pbc_overlap_cb, wpa_s, NULL);
#endif /* CONFIG_P2P */
if (wpa_s->wps == NULL) if (wpa_s->wps == NULL)
return; return;