]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
Remove leftover timeouts on cleanup
authorAlexandru Costache <alexandru.costache.100@gmail.com>
Mon, 12 May 2014 16:14:55 +0000 (19:14 +0300)
committerJouni Malinen <j@w1.fi>
Mon, 12 May 2014 16:43:59 +0000 (19:43 +0300)
Signed-off-by: Alexandru Costache <alexandru.costache.100@gmail.com>
wpa_supplicant/dbus/dbus_common.c
wpa_supplicant/hs20_supplicant.c
wpa_supplicant/hs20_supplicant.h
wpa_supplicant/p2p_supplicant.c
wpa_supplicant/wpa_supplicant.c
wpa_supplicant/wps_supplicant.c

index 6caf740ecc0abe062993eb61f46348676ff14e5a..5cc15059107727bc852515e2cd835bf7dac9a40b 100644 (file)
@@ -320,6 +320,8 @@ static void wpas_dbus_deinit_common(struct wpas_dbus_priv *priv)
        if (priv->con) {
                eloop_cancel_timeout(dispatch_initial_dbus_messages,
                                     priv->con, NULL);
+               eloop_cancel_timeout(process_timeout, priv, ELOOP_ALL_CTX);
+
                dbus_connection_set_watch_functions(priv->con, NULL, NULL,
                                                    NULL, NULL, NULL);
                dbus_connection_set_timeout_functions(priv->con, NULL, NULL,
index c242c3319acb8060135828ce8ebeee9a5f93948f..ab8b66bb56048af55097fd65942046922b8be68b 100644 (file)
@@ -920,3 +920,10 @@ void hs20_rx_deauth_imminent_notice(struct wpa_supplicant *wpa_s, u8 code,
                        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);
+}
index f6c4d4432066d0238994b2e60e8cb6c9667a4e39..06739f5c9b78ddca2624d7458a3dec30b17210f0 100644 (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_icon_fetch_failed(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 */
index be160c0d0488d59f0576332dbcaa80b7f02b1fa8..499b815ec4c219ca412d73187ad67285d45513a1 100644 (file)
@@ -125,6 +125,7 @@ static void wpas_p2p_fallback_to_go_neg(struct wpa_supplicant *wpa_s,
                                        int group_added);
 static int wpas_p2p_stop_find_oper(struct wpa_supplicant *wpa_s);
 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);
        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_join_scan, wpa_s, NULL);
        wpa_s->p2p_long_listen = 0;
index 8ba816b4ea6538a1169fd90f98cae7cb8926e5a4..e38e3e070ab42f913659d88410cc465b335cd842 100644 (file)
@@ -498,7 +498,7 @@ static void wpa_supplicant_cleanup(struct wpa_supplicant *wpa_s)
        wpa_s->last_scan_res = NULL;
 
 #ifdef CONFIG_HS20
-       hs20_free_osu_prov(wpa_s);
+       hs20_deinit(wpa_s);
 #endif /* CONFIG_HS20 */
 }
 
index 2b58749e632c6be1404b997e82757bf38e8ccd73..de015eec55eadb4804cdfcea800aa00a90d8bb10 100644 (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);
        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)
                return;