summaryrefslogtreecommitdiff
path: root/libnm-core
diff options
context:
space:
mode:
authorAntonio Cardace <acardace@redhat.com>2019-12-18 14:46:22 +0100
committerAntonio Cardace <acardace@redhat.com>2019-12-18 16:15:06 +0100
commit730adf2afd8be6c3c44cc5a9b7ce64245bf8f1fc (patch)
tree075933e0016ae9cf21db79d91209a88cb4cb14f8 /libnm-core
parent725cc687106d6450bf6d6878e7d2936ddc56bca9 (diff)
downloadNetworkManager-730adf2afd8be6c3c44cc5a9b7ce64245bf8f1fc.tar.gz
clients,libnm-core: zero-out memory used to store plain-text secrets
Diffstat (limited to 'libnm-core')
-rw-r--r--libnm-core/nm-setting-wireless-security.c25
1 files changed, 13 insertions, 12 deletions
diff --git a/libnm-core/nm-setting-wireless-security.c b/libnm-core/nm-setting-wireless-security.c
index b0b96f9957..6032053bbb 100644
--- a/libnm-core/nm-setting-wireless-security.c
+++ b/libnm-core/nm-setting-wireless-security.c
@@ -13,6 +13,7 @@
#include "nm-utils-private.h"
#include "nm-setting-private.h"
#include "nm-setting-wireless.h"
+#include "nm-glib-aux/nm-secret-utils.h"
/**
* SECTION:nm-setting-wireless-security
@@ -1316,33 +1317,33 @@ set_property (GObject *object, guint prop_id,
priv->leap_username = g_value_dup_string (value);
break;
case PROP_WEP_KEY0:
- g_free (priv->wep_key0);
+ nm_free_secret (priv->wep_key0);
priv->wep_key0 = g_value_dup_string (value);
break;
case PROP_WEP_KEY1:
- g_free (priv->wep_key1);
+ nm_free_secret (priv->wep_key1);
priv->wep_key1 = g_value_dup_string (value);
break;
case PROP_WEP_KEY2:
- g_free (priv->wep_key2);
+ nm_free_secret (priv->wep_key2);
priv->wep_key2 = g_value_dup_string (value);
break;
case PROP_WEP_KEY3:
- g_free (priv->wep_key3);
+ nm_free_secret (priv->wep_key3);
priv->wep_key3 = g_value_dup_string (value);
break;
case PROP_WEP_KEY_FLAGS:
priv->wep_key_flags = g_value_get_flags (value);
break;
case PROP_PSK:
- g_free (priv->psk);
+ nm_free_secret (priv->psk);
priv->psk = g_value_dup_string (value);
break;
case PROP_PSK_FLAGS:
priv->psk_flags = g_value_get_flags (value);
break;
case PROP_LEAP_PASSWORD:
- g_free (priv->leap_password);
+ nm_free_secret (priv->leap_password);
priv->leap_password = g_value_dup_string (value);
break;
case PROP_LEAP_PASSWORD_FLAGS:
@@ -1392,12 +1393,12 @@ finalize (GObject *object)
g_free (priv->key_mgmt);
g_free (priv->auth_alg);
g_free (priv->leap_username);
- g_free (priv->wep_key0);
- g_free (priv->wep_key1);
- g_free (priv->wep_key2);
- g_free (priv->wep_key3);
- g_free (priv->psk);
- g_free (priv->leap_password);
+ nm_free_secret (priv->wep_key0);
+ nm_free_secret (priv->wep_key1);
+ nm_free_secret (priv->wep_key2);
+ nm_free_secret (priv->wep_key3);
+ nm_free_secret (priv->psk);
+ nm_free_secret (priv->leap_password);
g_slist_free_full (priv->proto, g_free);
g_slist_free_full (priv->pairwise, g_free);