summary refs log tree commit diff
path: root/system-settings/plugins/ifnet
diff options
context:
space:
mode:
authorMichael Biebl <biebl@debian.org>2011-03-18 20:17:47 +0100
committerMichael Biebl <biebl@debian.org>2011-03-18 20:17:47 +0100
commite22c6e05e9ebc6cce941762020c5710b8014677b (patch)
tree7e9fd7f8ae24a94b03f683e0cef9a346968e1e8b /system-settings/plugins/ifnet
parenta6b89d35fabd9f5934b84d7cde22e9268f92c3d3 (diff)
Imported Upstream version 0.8.3.998 upstream/0.8.3.998
Diffstat (limited to 'system-settings/plugins/ifnet')
-rw-r--r--system-settings/plugins/ifnet/Makefile.am10
-rw-r--r--system-settings/plugins/ifnet/Makefile.in11
-rw-r--r--system-settings/plugins/ifnet/net_utils.c60
-rw-r--r--system-settings/plugins/ifnet/plugin.c2
-rw-r--r--system-settings/plugins/ifnet/tests/Makefile.am3
-rw-r--r--system-settings/plugins/ifnet/tests/Makefile.in13
-rw-r--r--system-settings/plugins/ifnet/tests/test_all.c77
7 files changed, 111 insertions, 65 deletions
diff --git a/system-settings/plugins/ifnet/Makefile.am b/system-settings/plugins/ifnet/Makefile.am
index f63f8ca7..86d5ea25 100644
--- a/system-settings/plugins/ifnet/Makefile.am
+++ b/system-settings/plugins/ifnet/Makefile.am
@@ -21,11 +21,10 @@ libnm_settings_plugin_ifnet_la_CPPFLAGS = \
 	$(DBUS_CFLAGS) \
 	$(GUDEV_CFLAGS) \
 	-DG_DISABLE_DEPRECATED \
-	-DSYSCONFDIR=\"$(sysconfdir)\"\
-	-g
-
+	-DSYSCONFDIR=\"$(sysconfdir)\"
 
 libnm_settings_plugin_ifnet_la_LDFLAGS = -module -avoid-version
+
 libnm_settings_plugin_ifnet_la_LIBADD = \
 	$(top_builddir)/libnm-util/libnm-util.la \
 	$(top_builddir)/libnm-glib/libnm-glib.la \
@@ -50,12 +49,9 @@ lib_ifnet_io_la_CPPFLAGS = \
 		           $(DBUS_CFLAGS) \
 		           -DG_DISABLE_DEPRECATED \
 		           -DSYSCONFDIR=\"$(sysconfdir)\" \
-		           -DSBINDIR=\"$(sbindir)\"\
-			   -g
+		           -DSBINDIR=\"$(sbindir)\"
 
 lib_ifnet_io_la_LIBADD = \
 			 $(top_builddir)/libnm-util/libnm-util.la \
 			 $(GLIB_LIBS)\
 			 $(GIO_LIBS)
-
-
diff --git a/system-settings/plugins/ifnet/Makefile.in b/system-settings/plugins/ifnet/Makefile.in
index 39515d88..c5047f5b 100644
--- a/system-settings/plugins/ifnet/Makefile.in
+++ b/system-settings/plugins/ifnet/Makefile.in
@@ -260,6 +260,10 @@ MSGFMT_OPTS = @MSGFMT_OPTS@
 MSGMERGE = @MSGMERGE@
 NM = @NM@
 NMEDIT = @NMEDIT@
+NM_MAJOR_VERSION = @NM_MAJOR_VERSION@
+NM_MICRO_VERSION = @NM_MICRO_VERSION@
+NM_MINOR_VERSION = @NM_MINOR_VERSION@
+NM_VERSION = @NM_VERSION@
 NSS_CFLAGS = @NSS_CFLAGS@
 NSS_LIBS = @NSS_LIBS@
 OBJDUMP = @OBJDUMP@
@@ -274,6 +278,7 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
 PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_PATH = @PKGCONFIG_PATH@
 PKG_CONFIG = @PKG_CONFIG@
 PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
 PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
@@ -370,8 +375,7 @@ libnm_settings_plugin_ifnet_la_CPPFLAGS = \
 	$(DBUS_CFLAGS) \
 	$(GUDEV_CFLAGS) \
 	-DG_DISABLE_DEPRECATED \
-	-DSYSCONFDIR=\"$(sysconfdir)\"\
-	-g
+	-DSYSCONFDIR=\"$(sysconfdir)\"
 
 libnm_settings_plugin_ifnet_la_LDFLAGS = -module -avoid-version
 libnm_settings_plugin_ifnet_la_LIBADD = \
@@ -398,8 +402,7 @@ lib_ifnet_io_la_CPPFLAGS = \
 		           $(DBUS_CFLAGS) \
 		           -DG_DISABLE_DEPRECATED \
 		           -DSYSCONFDIR=\"$(sysconfdir)\" \
-		           -DSBINDIR=\"$(sbindir)\"\
-			   -g
+		           -DSBINDIR=\"$(sbindir)\"
 
 lib_ifnet_io_la_LIBADD = \
 			 $(top_builddir)/libnm-util/libnm-util.la \
diff --git a/system-settings/plugins/ifnet/net_utils.c b/system-settings/plugins/ifnet/net_utils.c
index 8a541979..2dc253c5 100644
--- a/system-settings/plugins/ifnet/net_utils.c
+++ b/system-settings/plugins/ifnet/net_utils.c
@@ -19,7 +19,6 @@
  * Copyright (C) 1999-2010 Gentoo Foundation, Inc.
  */
 
-#include <config.h>
 #include <stdlib.h>
 #include <stdio.h>
 #include <string.h>
@@ -194,6 +193,32 @@ ifnet_plugin_error_quark (void)
 	return error_quark;
 }
 
+static char *
+find_default_gateway_str (char *str)
+{
+	char *tmp;
+
+	if ((tmp = strstr (str, "default via ")) != NULL) {
+		return tmp + strlen ("default via ");
+	} else if ((tmp = strstr (str, "default gw ")) != NULL) {
+		return tmp + strlen ("default gw ");
+	}
+	return NULL;
+}
+
+static char *
+find_gateway_str (char *str)
+{
+	char *tmp;
+
+	if ((tmp = strstr (str, "via ")) != NULL) {
+		return tmp + strlen ("via ");
+	} else if ((tmp = strstr (str, "gw ")) != NULL) {
+		return tmp + strlen ("gw ");
+	}
+	return NULL;
+}
+
 gboolean
 reload_parsers ()
 {
@@ -362,11 +387,10 @@ has_default_route (gchar * conn_name, gboolean (*check_fn) (gchar *))
 	if (!tmp)
 		return FALSE;
 	routes = g_strdup (tmp);
-	tmp = strstr (routes, "default via ");
+	tmp = find_default_gateway_str (routes);
 	if (!tmp) {
 		goto error;
 	}
-	tmp += strlen ("default via ");
 	g_strstrip (tmp);
 	if ((end = strstr (tmp, "\"")) != NULL)
 		*end = '\0';
@@ -483,8 +507,13 @@ get_ip4_gateway (gchar * gateway)
 
 	if (!gateway)
 		return 0;
-	tmp = strstr (gateway, "via ");
-	tmp = g_strdup (tmp + strlen ("via "));
+	tmp = find_gateway_str (gateway);
+	if (!tmp) {
+		PLUGIN_WARN (IFNET_PLUGIN_NAME,
+			     "Couldn't obtain gateway in \"%s\"", gateway);
+		return 0;
+	}
+	tmp = g_strdup (tmp);
 	strip_string (tmp, ' ');
 	strip_string (tmp, '"');
 	if ((split = strstr (tmp, "\"")) != NULL)
@@ -509,8 +538,13 @@ get_ip6_next_hop (gchar * next_hop)
 
 	if (!next_hop)
 		return 0;
-	tmp = strstr (next_hop, "via ");
-	tmp = g_strdup (tmp + strlen ("via "));
+	tmp = find_gateway_str (next_hop);
+	if (!tmp) {
+		PLUGIN_WARN (IFNET_PLUGIN_NAME,
+			     "Couldn't obtain next_hop in \"%s\"", next_hop);
+		return 0;
+	}
+	tmp = g_strdup (tmp);
 	strip_string (tmp, ' ');
 	strip_string (tmp, '"');
 	g_strstrip (tmp);
@@ -671,8 +705,8 @@ convert_ip4_routes_block (gchar * conn_name)
 	length = g_strv_length (ipset);
 	for (i = 0; i < length; i++) {
 		ip = ipset[i];
-		if (strstr (ip, "default via ") || strstr (ip, "::")
-		    || !strstr (ip, "via"))
+		if (find_default_gateway_str (ip) || strstr (ip, "::")
+		    || !find_gateway_str (ip))
 			continue;
 		ip = strip_string (ip, '"');
 		iblock = create_ip4_block (ip);
@@ -712,9 +746,7 @@ convert_ip6_routes_block (gchar * conn_name)
 		ip = strip_string (ip, '"');
 		if (ip[0] == '\0')
 			continue;
-		printf ("ip:%s\n", ip);
-		if ((tmp_addr = strstr (ip, "default via ")) != NULL) {
-			tmp_addr += strlen ("default via ");
+		if ((tmp_addr = find_default_gateway_str (ip)) != NULL) {
 			if (!is_ip6_address (tmp_addr))
 				continue;
 			else {
@@ -855,7 +887,7 @@ is_managed (gchar * conn_name)
 void
 get_dhcp_hostname_and_client_id (char **hostname, char **client_id)
 {
-	gchar *dhcp_client = ifnet_get_global_setting ("main", "dhcp");
+	gchar *dhcp_client = NULL;
 	const gchar *dhcpcd_conf = "/etc/dhcpcd.conf";
 	const gchar *dhclient_conf = "/etc/dhcp/dhclient.conf";
 	gchar *line = NULL, *tmp = NULL, *contents = NULL;
@@ -864,6 +896,7 @@ get_dhcp_hostname_and_client_id (char **hostname, char **client_id)
 
 	*hostname = NULL;
 	*client_id = NULL;
+	dhcp_client = ifnet_get_global_setting ("main", "dhcp");
 	if (dhcp_client) {
 		if (!strcmp (dhcp_client, "dhclient"))
 			g_file_get_contents (dhclient_conf, &contents, NULL,
@@ -871,6 +904,7 @@ get_dhcp_hostname_and_client_id (char **hostname, char **client_id)
 		else if (!strcmp (dhcp_client, "dhcpcd"))
 			g_file_get_contents (dhcpcd_conf, &contents, NULL,
 					     NULL);
+		g_free (dhcp_client);
 	} else {
 		if (g_file_test (dhclient_conf, G_FILE_TEST_IS_REGULAR))
 			g_file_get_contents (dhclient_conf, &contents, NULL,
diff --git a/system-settings/plugins/ifnet/plugin.c b/system-settings/plugins/ifnet/plugin.c
index 51d56024..94f9e791 100644
--- a/system-settings/plugins/ifnet/plugin.c
+++ b/system-settings/plugins/ifnet/plugin.c
@@ -40,7 +40,7 @@
 #include "connection_parser.h"
 
 #define IFNET_PLUGIN_NAME_PRINT "ifnet"
-#define IFNET_PLUGIN_INFO "(C) 1999-2010 Gentoo Foundation, Inc. To report bugs please use bugs.gentoo.org with [networkmanager] or [dagger] prefix."
+#define IFNET_PLUGIN_INFO "(C) 1999-2010 Gentoo Foundation, Inc. To report bugs please use bugs.gentoo.org with [networkmanager] or [qiaomuf] prefix."
 #define IFNET_SYSTEM_HOSTNAME_FILE "/etc/conf.d/hostname"
 #define IFNET_MANAGE_WELL_KNOWN_DEFAULT TRUE
 #define IFNET_KEY_FILE_KEY_MANAGED "managed"
diff --git a/system-settings/plugins/ifnet/tests/Makefile.am b/system-settings/plugins/ifnet/tests/Makefile.am
index ead3f1fc..17a081f5 100644
--- a/system-settings/plugins/ifnet/tests/Makefile.am
+++ b/system-settings/plugins/ifnet/tests/Makefile.am
@@ -6,8 +6,7 @@ INCLUDES=-I$(top_srcdir)/system-settings/plugins/ifnet\
 TESTS = check_ifnet
 check_PROGRAMS = check_ifnet
 check_ifnet_SOURCES = test_all.c 
-check_ifnet_LDFLAGS = -g
-check_ifnet_CPPFLAGS = $(CHECK_CFLAGS) $(GLIB_CFLAGS) -g
+check_ifnet_CPPFLAGS = $(CHECK_CFLAGS) $(GLIB_CFLAGS)
 check_ifnet_LDADD = $(top_srcdir)/libnm-util/libnm-util.la\
 		    $(top_srcdir)/system-settings/plugins/ifnet/lib-ifnet-io.la\
 		    $(CHECK_LIBS)\
diff --git a/system-settings/plugins/ifnet/tests/Makefile.in b/system-settings/plugins/ifnet/tests/Makefile.in
index cef1039b..39d49b4e 100644
--- a/system-settings/plugins/ifnet/tests/Makefile.in
+++ b/system-settings/plugins/ifnet/tests/Makefile.in
@@ -59,9 +59,6 @@ check_ifnet_DEPENDENCIES = $(top_srcdir)/libnm-util/libnm-util.la \
 AM_V_lt = $(am__v_lt_$(V))
 am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY))
 am__v_lt_0 = --silent
-check_ifnet_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
-	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
-	$(check_ifnet_LDFLAGS) $(LDFLAGS) -o $@
 DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
 depcomp = $(SHELL) $(top_srcdir)/depcomp
 am__depfiles_maybe = depfiles
@@ -187,6 +184,10 @@ MSGFMT_OPTS = @MSGFMT_OPTS@
 MSGMERGE = @MSGMERGE@
 NM = @NM@
 NMEDIT = @NMEDIT@
+NM_MAJOR_VERSION = @NM_MAJOR_VERSION@
+NM_MICRO_VERSION = @NM_MICRO_VERSION@
+NM_MINOR_VERSION = @NM_MINOR_VERSION@
+NM_VERSION = @NM_VERSION@
 NSS_CFLAGS = @NSS_CFLAGS@
 NSS_LIBS = @NSS_LIBS@
 OBJDUMP = @OBJDUMP@
@@ -201,6 +202,7 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
 PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_PATH = @PKGCONFIG_PATH@
 PKG_CONFIG = @PKG_CONFIG@
 PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
 PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
@@ -283,8 +285,7 @@ INCLUDES = -I$(top_srcdir)/system-settings/plugins/ifnet\
 	 -I$(top_srcdir)/src/system-settings
 
 check_ifnet_SOURCES = test_all.c 
-check_ifnet_LDFLAGS = -g
-check_ifnet_CPPFLAGS = $(CHECK_CFLAGS) $(GLIB_CFLAGS) -g
+check_ifnet_CPPFLAGS = $(CHECK_CFLAGS) $(GLIB_CFLAGS)
 check_ifnet_LDADD = $(top_srcdir)/libnm-util/libnm-util.la\
 		    $(top_srcdir)/system-settings/plugins/ifnet/lib-ifnet-io.la\
 		    $(CHECK_LIBS)\
@@ -335,7 +336,7 @@ clean-checkPROGRAMS:
 	rm -f $$list
 check_ifnet$(EXEEXT): $(check_ifnet_OBJECTS) $(check_ifnet_DEPENDENCIES) 
 	@rm -f check_ifnet$(EXEEXT)
-	$(AM_V_CCLD)$(check_ifnet_LINK) $(check_ifnet_OBJECTS) $(check_ifnet_LDADD) $(LIBS)
+	$(AM_V_CCLD)$(LINK) $(check_ifnet_OBJECTS) $(check_ifnet_LDADD) $(LIBS)
 
 mostlyclean-compile:
 	-rm -f *.$(OBJEXT)
diff --git a/system-settings/plugins/ifnet/tests/test_all.c b/system-settings/plugins/ifnet/tests/test_all.c
index ba983976..eff76af2 100644
--- a/system-settings/plugins/ifnet/tests/test_all.c
+++ b/system-settings/plugins/ifnet/tests/test_all.c
@@ -58,17 +58,22 @@ test_read_hostname ()
 		"get hostname",
 		"hostname is not correctly read, read:%s, expected: gentoo",
 		hostname);
+	g_free (hostname);
 }
 
 static void
 test_write_hostname ()
 {
 	gchar *hostname = read_hostname ("hostname");
+	gchar *tmp;
 
 	write_hostname ("gentoo-nm", "hostname");
-	ASSERT (strcmp (read_hostname ("hostname"), "gentoo-nm") == 0,
+	tmp = read_hostname ("hostname");
+	ASSERT (strcmp (tmp, "gentoo-nm") == 0,
 		"write hostname", "write hostname error");
 	write_hostname (hostname, "hostname");
+	g_free (tmp);
+	g_free (hostname);
 }
 
 static void
@@ -85,14 +90,13 @@ test_is_static ()
 static void
 test_has_default_route ()
 {
-	ASSERT (has_default_ip4_route ("eth0"), "has default route",
-		"eth0 should have a default ipv4 route");
-	ASSERT (has_default_ip6_route ("eth4"), "has default route",
-		"eth4 should have a default ipv6 route");
-
+	ASSERT (has_default_ip4_route ("eth0"),
+		"has default route", "eth0 should have a default ipv4 route");
+	ASSERT (has_default_ip6_route ("eth4"),
+		"has default route", "eth4 should have a default ipv6 route");
 	ASSERT (!has_default_ip4_route ("eth5")
-		&& !has_default_ip6_route ("eth5"), "has default route",
-		"eth5 shouldn't have a default route");
+		&& !has_default_ip6_route ("eth5"),
+		"has default route", "eth5 shouldn't have a default route");
 }
 
 static void
@@ -138,8 +142,8 @@ check_ip_block (ip_block * iblock, gchar * ip, gchar * netmask, gchar * gateway)
 	str = malloc (INET_ADDRSTRLEN);
 	tmp_ip4_addr.s_addr = iblock->ip;
 	inet_ntop (AF_INET, &tmp_ip4_addr, str, INET_ADDRSTRLEN);
-	ASSERT (strcmp (ip, str) == 0, "check ip", "ip expected:%s, find:%s",
-		ip, str);
+	ASSERT (strcmp (ip, str) == 0, "check ip",
+		"ip expected:%s, find:%s", ip, str);
 	tmp_ip4_addr.s_addr = iblock->netmask;
 	inet_ntop (AF_INET, &tmp_ip4_addr, str, INET_ADDRSTRLEN);
 	ASSERT (strcmp (netmask, str) == 0, "check netmask",
@@ -170,8 +174,8 @@ test_convert_ipv4_config_block ()
 	destroy_ip_block (iblock);
 	iblock = convert_ip4_config_block ("eth2");
 	ASSERT (iblock != NULL
-		&& iblock->next == NULL, "convert error IPv4 address",
-		"should only get one address");
+		&& iblock->next == NULL,
+		"convert error IPv4 address", "should only get one address");
 	check_ip_block (iblock, "192.168.4.121", "255.255.255.0", "0.0.0.0");
 	destroy_ip_block (iblock);
 	iblock = convert_ip4_config_block ("eth3");
@@ -182,7 +186,6 @@ test_convert_ipv4_config_block ()
 	ASSERT (iblock != NULL, "convert config_block",
 		"convert error configuration");
 	destroy_ip_block (iblock);
-
 }
 
 static void
@@ -209,10 +212,13 @@ test_wpa_parser ()
 	ASSERT (exist_ssid ("static-wep-test"), "exist_ssid",
 		"ssid static-wep-test is not found");
 	value = wpa_get_value ("static-wep-test", "key_mgmt");
-	ASSERT (value && strcmp (value, "NONE") == 0, "get wpa data",
+	ASSERT (value
+		&& strcmp (value, "NONE") == 0, "get wpa data",
 		"key_mgmt of static-wep-test should be NONE, find %s", value);
 	value = wpa_get_value ("static-wep-test", "wep_key0");
-	ASSERT (value && strcmp (value, "\"abcde\"") == 0, "get wpa data",
+	ASSERT (value
+		&& strcmp (value, "\"abcde\"") == 0,
+		"get wpa data",
 		"wep_key0 of static-wep-test should be abcde, find %s", value);
 	ASSERT (exist_ssid ("leap-example"), "get wsec",
 		"ssid leap-example is not found");
@@ -228,8 +234,9 @@ test_strip_string ()
 	result = strip_string (result, '(');
 	result = strip_string (result, ')');
 	result = strip_string (result, '"');
-	ASSERT (strcmp (result, "default via     202.117.16.1") == 0,
-		"strip_string", "string isn't stripped, result is: %s", result);
+	ASSERT (strcmp (result, "default via     202.117.16.1") ==
+		0, "strip_string",
+		"string isn't stripped, result is: %s", result);
 	g_free (result_b);
 }
 
@@ -265,7 +272,6 @@ test_new_connection ()
 		"new connection failed: %s", error
 		&& (*error) ? (*error)->message : "NONE");
 	g_object_unref (connection);
-
 }
 
 static void
@@ -280,8 +286,9 @@ test_update_connection ()
 		error == NULL ? "None" : (*error)->message);
 	ASSERT (ifnet_update_parsers_by_connection
 		(connection, "eth0", NULL, "net.generate",
-		 "wpa_supplicant.conf.generate", error), "update connection",
-		"update connection failed %s", "eth0");
+		 "wpa_supplicant.conf.generate", error),
+		"update connection", "update connection failed %s", "eth0");
+	g_object_unref (connection);
 	connection =
 	    ifnet_update_connection_from_config_block ("0xab3ace", error);
 	ASSERT (connection != NULL, "get connection",
@@ -289,8 +296,9 @@ test_update_connection ()
 		error == NULL ? "None" : (*error)->message);
 	ASSERT (ifnet_update_parsers_by_connection
 		(connection, "0xab3ace", NULL, "net.generate",
-		 "wpa_supplicant.conf.generate", error), "update connection",
-		"update connection failed %s", "0xab3ace");
+		 "wpa_supplicant.conf.generate", error),
+		"update connection", "update connection failed %s", "0xab3ace");
+	g_object_unref (connection);
 }
 
 static void
@@ -301,14 +309,17 @@ test_add_connection ()
 
 	connection = ifnet_update_connection_from_config_block ("eth0", error);
 	ASSERT (ifnet_add_new_connection
-		(connection, "net.generate", "wpa_supplicant.conf.generate",
-		 error), "add connection", "add connection failed: %s", "eth0");
+		(connection, "net.generate",
+		 "wpa_supplicant.conf.generate", error),
+		"add connection", "add connection failed: %s", "eth0");
+	g_object_unref (connection);
 	connection =
 	    ifnet_update_connection_from_config_block ("myxjtu2", error);
 	ASSERT (ifnet_add_new_connection
-		(connection, "net.generate", "wpa_supplicant.conf.generate",
-		 error), "add connection", "add connection failed: %s",
-		"myxjtu2");
+		(connection, "net.generate",
+		 "wpa_supplicant.conf.generate", error),
+		"add connection", "add connection failed: %s", "myxjtu2");
+	g_object_unref (connection);
 }
 
 static void
@@ -322,16 +333,20 @@ test_delete_connection ()
 		"get connection failed: %s",
 		error == NULL ? "None" : (*error)->message);
 	ASSERT (ifnet_delete_connection_in_parsers
-		("eth7", "net.generate", "wpa_supplicant.conf.generate"),
+		("eth7", "net.generate",
+		 "wpa_supplicant.conf.generate"),
 		"delete connection", "delete connection failed: %s", "eth7");
+	g_object_unref (connection);
 	connection =
 	    ifnet_update_connection_from_config_block ("qiaomuf", error);
 	ASSERT (connection != NULL, "get connection",
 		"get connection failed: %s",
 		error == NULL ? "None" : (*error)->message);
 	ASSERT (ifnet_delete_connection_in_parsers
-		("qiaomuf", "net.generate", "wpa_supplicant.conf.generate"),
+		("qiaomuf", "net.generate",
+		 "wpa_supplicant.conf.generate"),
 		"delete connection", "delete connection failed: %s", "qiaomuf");
+	g_object_unref (connection);
 }
 
 static void
@@ -369,10 +384,8 @@ main (void)
 	wpa_parser_destroy ();
 	ifnet_init ("net");
 	wpa_parser_init ("wpa_supplicant.conf");
-	printf("Initialization complete\n");
-
+	printf ("Initialization complete\n");
 	run_all (TRUE);
-
 	ifnet_destroy ();
 	wpa_parser_destroy ();
 	return 0;