summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libnm-core/tests/test-crypto.c2
-rw-r--r--src/settings/plugins/ifnet/connection_parser.c2
-rw-r--r--src/settings/plugins/ifnet/net_parser.c10
-rw-r--r--src/settings/plugins/ifnet/tests/test-ifnet.c4
-rw-r--r--src/settings/plugins/ifnet/wpa_parser.c13
-rw-r--r--valgrind.suppressions8
6 files changed, 31 insertions, 8 deletions
diff --git a/libnm-core/tests/test-crypto.c b/libnm-core/tests/test-crypto.c
index bd87c710ca..1c4a3a23bb 100644
--- a/libnm-core/tests/test-crypto.c
+++ b/libnm-core/tests/test-crypto.c
@@ -497,6 +497,8 @@ main (int argc, char **argv)
ret = g_test_run ();
+ crypto_deinit ();
+
return ret;
}
diff --git a/src/settings/plugins/ifnet/connection_parser.c b/src/settings/plugins/ifnet/connection_parser.c
index d9ff97dc4d..6e010d572a 100644
--- a/src/settings/plugins/ifnet/connection_parser.c
+++ b/src/settings/plugins/ifnet/connection_parser.c
@@ -679,7 +679,7 @@ make_ip4_setting (NMConnection *connection,
/* DNS searches */
value = ifnet_get_data (conn_name, "dns_search");
if (value) {
- char *stripped = g_strdup (value);
+ gs_free char *stripped = g_strdup (value);
char **searches = NULL;
strip_string (stripped, '"');
diff --git a/src/settings/plugins/ifnet/net_parser.c b/src/settings/plugins/ifnet/net_parser.c
index 6e1061c673..db5e7a13e7 100644
--- a/src/settings/plugins/ifnet/net_parser.c
+++ b/src/settings/plugins/ifnet/net_parser.c
@@ -501,13 +501,13 @@ GList *
ifnet_get_connection_names (void)
{
GList *names = g_hash_table_get_keys (conn_table);
- GList *result = NULL;
+ GList *iter, *result = NULL;
- while (names) {
- if (!ignore_connection_name (names->data))
- result = g_list_prepend (result, names->data);
- names = names->next;
+ for (iter = names; iter; iter = iter->next) {
+ if (!ignore_connection_name (iter->data))
+ result = g_list_prepend (result, iter->data);
}
+
g_list_free (names);
return g_list_reverse (result);
}
diff --git a/src/settings/plugins/ifnet/tests/test-ifnet.c b/src/settings/plugins/ifnet/tests/test-ifnet.c
index 3035fdb156..9718526961 100644
--- a/src/settings/plugins/ifnet/tests/test-ifnet.c
+++ b/src/settings/plugins/ifnet/tests/test-ifnet.c
@@ -37,6 +37,7 @@
#include "wpa_parser.h"
#include "connection_parser.h"
#include "nm-config.h"
+#include "crypto.h"
#include "nm-test-utils.h"
@@ -346,7 +347,7 @@ test_delete_connection (void)
static void
test_missing_config (void)
{
- GError *error = NULL;
+ gs_free_error GError *error = NULL;
NMConnection *connection;
connection = ifnet_update_connection_from_config_block ("eth8", NULL, &error);
@@ -391,6 +392,7 @@ main (int argc, char **argv)
ifnet_destroy ();
wpa_parser_destroy ();
+ crypto_deinit ();
return ret;
}
diff --git a/src/settings/plugins/ifnet/wpa_parser.c b/src/settings/plugins/ifnet/wpa_parser.c
index 8e2559b300..505222ab51 100644
--- a/src/settings/plugins/ifnet/wpa_parser.c
+++ b/src/settings/plugins/ifnet/wpa_parser.c
@@ -77,8 +77,10 @@ add_security (GHashTable *security)
/* Hex format begins with " */
is_hex_ssid = (ssid[0] != '"');
if ((value = g_hash_table_lookup (security, "disabled")) != NULL) {
- if (strcmp (value, "1") == 0)
+ if (strcmp (value, "1") == 0) {
+ destroy_security (security);
return NULL;
+ }
}
/* Default priority is 1 */
@@ -111,6 +113,7 @@ add_security (GHashTable *security)
static void
add_key_value (GHashTable * network, gchar * line)
{
+ gpointer orig_key, orig_value;
gchar **key_value;
if (g_str_has_prefix (line, "network={"))
@@ -133,6 +136,14 @@ add_key_value (GHashTable * network, gchar * line)
&& !g_str_has_prefix (key_value[0], "wep_key")
&& strcmp (key_value[0], "ssid") != 0)
strip_string (key_value[1], '"');
+
+ /* This sucks */
+ if (g_hash_table_lookup_extended (network, key_value[0], &orig_key, &orig_value)) {
+ g_hash_table_remove (network, orig_key);
+ g_free (orig_key);
+ g_free (orig_value);
+ }
+
g_hash_table_insert (network, g_strdup (key_value[0]),
g_strdup (key_value[1]));
g_strfreev (key_value);
diff --git a/valgrind.suppressions b/valgrind.suppressions
index 46b4a5ba76..596d5611fc 100644
--- a/valgrind.suppressions
+++ b/valgrind.suppressions
@@ -440,3 +440,11 @@
fun:start_thread
fun:clone
}
+{
+ _btrfs_io_clone
+ Memcheck:Param
+ ioctl(generic)
+ fun:ioctl
+ fun:btrfs_reflink_with_progress
+ ...
+}