From 6df19739885be0594390222fdfb59d597c472b65 Mon Sep 17 00:00:00 2001 From: Jouni Malinen Date: Mon, 29 Dec 2014 13:11:29 +0200 Subject: [PATCH] Clear psk_list while freeing config_ssid instances Previously, the main PSK entry was cleared explicitly, but psk_list could include PSKs for some P2P use cases, so clear it as well when freeing config_ssid instances. Signed-off-by: Jouni Malinen --- wpa_supplicant/config.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/wpa_supplicant/config.c b/wpa_supplicant/config.c index d3a8c86ff..f478a040f 100644 --- a/wpa_supplicant/config.c +++ b/wpa_supplicant/config.c @@ -2078,7 +2078,6 @@ void wpa_config_free_ssid(struct wpa_ssid *ssid) struct psk_list_entry *psk; os_free(ssid->ssid); - os_memset(ssid->psk, 0, sizeof(ssid->psk)); str_clear_free(ssid->passphrase); os_free(ssid->ext_psk); #ifdef IEEE8021X_EAPOL @@ -2098,9 +2097,9 @@ void wpa_config_free_ssid(struct wpa_ssid *ssid) while ((psk = dl_list_first(&ssid->psk_list, struct psk_list_entry, list))) { dl_list_del(&psk->list); - os_free(psk); + bin_clear_free(psk, sizeof(*psk)); } - os_free(ssid); + bin_clear_free(ssid, sizeof(*ssid)); }