summary refs log tree commit diff
path: root/test
diff options
context:
space:
mode:
authorMichael Biebl <biebl@debian.org>2011-04-08 07:30:59 +0200
committerMichael Biebl <biebl@debian.org>2011-04-08 07:30:59 +0200
commitf75dd6fd1975146623052b843b182dc32c3fbe46 (patch)
tree05ba60b772670f038c9a1fbff940ec5d3e28d870 /test
parentc980bdf58dc973dd5617aaa6f9466f9e44fcbf58 (diff)
Imported Upstream version 0.8.998 upstream/0.8.998
Diffstat (limited to 'test')
-rw-r--r--test/Makefile.in50
-rw-r--r--test/nm-online.c8
-rw-r--r--test/nm-tool.c258
3 files changed, 221 insertions, 95 deletions
diff --git a/test/Makefile.in b/test/Makefile.in
index b65f1647..74cabe3a 100644
--- a/test/Makefile.in
+++ b/test/Makefile.in
@@ -40,11 +40,16 @@ subdir = test
 DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/m4/compiler_warnings.m4 \
-	$(top_srcdir)/m4/gtk-doc.m4 $(top_srcdir)/m4/intltool.m4 \
-	$(top_srcdir)/m4/libnl-check.m4 $(top_srcdir)/m4/libtool.m4 \
-	$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
-	$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
-	$(top_srcdir)/m4/nls.m4 $(top_srcdir)/configure.ac
+	$(top_srcdir)/m4/gettext.m4 $(top_srcdir)/m4/gtk-doc.m4 \
+	$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
+	$(top_srcdir)/m4/intltool.m4 $(top_srcdir)/m4/introspection.m4 \
+	$(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
+	$(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libnl-check.m4 \
+	$(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
+	$(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
+	$(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \
+	$(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \
+	$(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 	$(ACLOCAL_M4)
 mkinstalldirs = $(install_sh) -d
@@ -78,7 +83,7 @@ nm_tool_DEPENDENCIES = $(top_builddir)/libnm-glib/libnm-glib.la \
 	$(top_builddir)/libnm-util/libnm-util.la $(am__DEPENDENCIES_1) \
 	$(am__DEPENDENCIES_1)
 DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
-depcomp = $(SHELL) $(top_srcdir)/depcomp
+depcomp = $(SHELL) $(top_srcdir)/build-aux/depcomp
 am__depfiles_maybe = depfiles
 am__mv = mv -f
 COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
@@ -111,7 +116,6 @@ ETAGS = etags
 CTAGS = ctags
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
-ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 ALL_LINGUAS = @ALL_LINGUAS@
 AMTAR = @AMTAR@
 AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
@@ -120,8 +124,6 @@ AUTOCONF = @AUTOCONF@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
 AWK = @AWK@
-CATALOGS = @CATALOGS@
-CATOBJEXT = @CATOBJEXT@
 CC = @CC@
 CCDEPMODE = @CCDEPMODE@
 CFLAGS = @CFLAGS@
@@ -138,6 +140,7 @@ DHCLIENT_PATH = @DHCLIENT_PATH@
 DHCLIENT_VERSION = @DHCLIENT_VERSION@
 DHCPCD_PATH = @DHCPCD_PATH@
 DISABLE_DEPRECATED = @DISABLE_DEPRECATED@
+DLLTOOL = @DLLTOOL@
 DSYMUTIL = @DSYMUTIL@
 DUMPBIN = @DUMPBIN@
 ECHO_C = @ECHO_C@
@@ -146,6 +149,7 @@ ECHO_T = @ECHO_T@
 EGREP = @EGREP@
 EXEEXT = @EXEEXT@
 FGREP = @FGREP@
+GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
 GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
 GIO_CFLAGS = @GIO_CFLAGS@
 GIO_LIBS = @GIO_LIBS@
@@ -154,8 +158,8 @@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@
 GLIB_LIBS = @GLIB_LIBS@
 GMODULE_CFLAGS = @GMODULE_CFLAGS@
 GMODULE_LIBS = @GMODULE_LIBS@
-GMOFILES = @GMOFILES@
 GMSGFMT = @GMSGFMT@
+GMSGFMT_015 = @GMSGFMT_015@
 GNUTLS_CFLAGS = @GNUTLS_CFLAGS@
 GNUTLS_LIBS = @GNUTLS_LIBS@
 GREP = @GREP@
@@ -170,13 +174,23 @@ INSTALL_DATA = @INSTALL_DATA@
 INSTALL_PROGRAM = @INSTALL_PROGRAM@
 INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-INSTOBJEXT = @INSTOBJEXT@
 INTLLIBS = @INTLLIBS@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
+INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@
+INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@
+INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@
+INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@
+INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@
+INTROSPECTION_LIBS = @INTROSPECTION_LIBS@
+INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@
+INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@
+INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@
 IPTABLES_PATH = @IPTABLES_PATH@
+IWMX_SDK_CFLAGS = @IWMX_SDK_CFLAGS@
+IWMX_SDK_LIBS = @IWMX_SDK_LIBS@
 KERNEL_FIRMWARE_DIR = @KERNEL_FIRMWARE_DIR@
 LD = @LD@
 LDFLAGS = @LDFLAGS@
@@ -184,6 +198,8 @@ LIBDL = @LIBDL@
 LIBGCRYPT_CFLAGS = @LIBGCRYPT_CFLAGS@
 LIBGCRYPT_CONFIG = @LIBGCRYPT_CONFIG@
 LIBGCRYPT_LIBS = @LIBGCRYPT_LIBS@
+LIBICONV = @LIBICONV@
+LIBINTL = @LIBINTL@
 LIBM = @LIBM@
 LIBNL_CFLAGS = @LIBNL_CFLAGS@
 LIBNL_LIBS = @LIBNL_LIBS@
@@ -192,13 +208,15 @@ LIBS = @LIBS@
 LIBTOOL = @LIBTOOL@
 LIPO = @LIPO@
 LN_S = @LN_S@
+LTLIBICONV = @LTLIBICONV@
+LTLIBINTL = @LTLIBINTL@
 LTLIBOBJS = @LTLIBOBJS@
 MAINT = @MAINT@
 MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
 MKDIR_P = @MKDIR_P@
-MKINSTALLDIRS = @MKINSTALLDIRS@
 MSGFMT = @MSGFMT@
-MSGFMT_OPTS = @MSGFMT_OPTS@
+MSGFMT_015 = @MSGFMT_015@
 MSGMERGE = @MSGMERGE@
 NM = @NM@
 NMEDIT = @NMEDIT@
@@ -224,12 +242,9 @@ PKGCONFIG_PATH = @PKGCONFIG_PATH@
 PKG_CONFIG = @PKG_CONFIG@
 PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
 PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
-POFILES = @POFILES@
 POLKIT_CFLAGS = @POLKIT_CFLAGS@
 POLKIT_LIBS = @POLKIT_LIBS@
 POSUB = @POSUB@
-PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
-PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@
 PPPD_PLUGIN_DIR = @PPPD_PLUGIN_DIR@
 RANLIB = @RANLIB@
 RESOLVCONF_PATH = @RESOLVCONF_PATH@
@@ -244,10 +259,13 @@ UUID_CFLAGS = @UUID_CFLAGS@
 UUID_LIBS = @UUID_LIBS@
 VERSION = @VERSION@
 XGETTEXT = @XGETTEXT@
+XGETTEXT_015 = @XGETTEXT_015@
+XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
 abs_builddir = @abs_builddir@
 abs_srcdir = @abs_srcdir@
 abs_top_builddir = @abs_top_builddir@
 abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
 ac_ct_CC = @ac_ct_CC@
 ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
 am__include = @am__include@
diff --git a/test/nm-online.c b/test/nm-online.c
index 27bf1789..985cc774 100644
--- a/test/nm-online.c
+++ b/test/nm-online.c
@@ -66,7 +66,9 @@ static DBusHandlerResult dbus_filter (DBusConnection *connection G_GNUC_UNUSED,
 	if (!dbus_message_get_args (message, NULL, DBUS_TYPE_UINT32, &state, DBUS_TYPE_INVALID))
 		return DBUS_HANDLER_RESULT_NOT_YET_HANDLED;
 
-	if (state == NM_STATE_CONNECTED)
+	if (   state == NM_STATE_CONNECTED_LOCAL
+	    || state == NM_STATE_CONNECTED_SITE
+	    || state == NM_STATE_CONNECTED_GLOBAL)
 		g_main_loop_quit (loop);
 
 	return DBUS_HANDLER_RESULT_HANDLED;
@@ -193,7 +195,9 @@ int main (int argc, char *argv[])
 
 	/* Check after we setup the filter to ensure that we cannot race. */
 	state = check_online (connection);
-	if (state == NM_STATE_CONNECTED)
+	if (   state == NM_STATE_CONNECTED_LOCAL
+	    || state == NM_STATE_CONNECTED_SITE
+	    || state == NM_STATE_CONNECTED_GLOBAL)
 		return 0;
 	if (exit_no_nm && (state != NM_STATE_CONNECTING))
 		return 1;
diff --git a/test/nm-tool.c b/test/nm-tool.c
index b1178eaf..a4b80df0 100644
--- a/test/nm-tool.c
+++ b/test/nm-tool.c
@@ -1,3 +1,4 @@
+/* -*- Mode: C; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
 /* nm-tool - information tool for NetworkManager
  *
  * Dan Williams <dcbw@redhat.com>
@@ -16,10 +17,11 @@
  * with this program; if not, write to the Free Software Foundation, Inc.,
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  *
- * (C) Copyright 2005 - 2010 Red Hat, Inc.
+ * (C) Copyright 2005 - 2011 Red Hat, Inc.
  * (C) Copyright 2007 Novell, Inc.
  */
 
+#include <config.h>
 #include <glib.h>
 #include <dbus/dbus.h>
 #include <dbus/dbus-glib.h>
@@ -35,9 +37,11 @@
 #include <nm-device.h>
 #include <nm-device-ethernet.h>
 #include <nm-device-wifi.h>
-#include <nm-gsm-device.h>
-#include <nm-cdma-device.h>
+#include <nm-device-modem.h>
 #include <nm-device-bt.h>
+#if WITH_WIMAX
+#include <nm-device-wimax.h>
+#endif
 #include <nm-utils.h>
 #include <nm-setting-ip4-config.h>
 #include <nm-setting-ip6-config.h>
@@ -51,8 +55,7 @@
 #define DBUS_TYPE_G_MAP_OF_MAP_OF_VARIANT   (dbus_g_type_get_map ("GHashTable", G_TYPE_STRING, DBUS_TYPE_G_MAP_OF_VARIANT))
 #define DBUS_TYPE_G_ARRAY_OF_OBJECT_PATH    (dbus_g_type_get_collection ("GPtrArray", DBUS_TYPE_G_OBJECT_PATH))
 
-static GHashTable *user_connections = NULL;
-static GHashTable *system_connections = NULL;
+static GHashTable *connections = NULL;
 
 static gboolean
 get_nm_state (NMClient *client)
@@ -67,19 +70,21 @@ get_nm_state (NMClient *client)
 	case NM_STATE_ASLEEP:
 		state_string = "asleep";
 		break;
-
 	case NM_STATE_CONNECTING:
 		state_string = "connecting";
 		break;
-
-	case NM_STATE_CONNECTED:
-		state_string = "connected";
+	case NM_STATE_CONNECTED_LOCAL:
+		state_string = "connected (local only)";
+		break;
+	case NM_STATE_CONNECTED_SITE:
+		state_string = "connected (site only)";
+		break;
+	case NM_STATE_CONNECTED_GLOBAL:
+		state_string = "connected (global)";
 		break;
-
 	case NM_STATE_DISCONNECTED:
 		state_string = "disconnected";
 		break;
-
 	case NM_STATE_UNKNOWN:
 	default:
 		state_string = "unknown";
@@ -193,6 +198,48 @@ detail_access_point (gpointer data, gpointer user_data)
 	g_free (tmp);
 }
 
+#if WITH_WIMAX
+static const char *
+wimax_network_type_to_str (NMWimaxNspNetworkType type)
+{
+	switch (type) {
+	case NM_WIMAX_NSP_NETWORK_TYPE_HOME:
+		return "Home";
+	case NM_WIMAX_NSP_NETWORK_TYPE_PARTNER:
+		return "Partner";
+	case NM_WIMAX_NSP_NETWORK_TYPE_ROAMING_PARTNER:
+		return "Roaming";
+	default:
+		return "Unknown";
+	}
+}
+
+static void
+detail_nsp (gpointer data, gpointer user_data)
+{
+	NMWimaxNsp *nsp = NM_WIMAX_NSP (data);
+	const char *active_name = (const char *) user_data;
+	const char *name;
+	char *label;
+	char *data_str;
+	gboolean active = FALSE;
+
+	name = nm_wimax_nsp_get_name (nsp);
+
+	if (active_name)
+		active = g_strcmp0 (active_name, name) == 0;
+
+	label = g_strdup_printf ("  %s%s", active ? "*" : "", name);
+	data_str = g_strdup_printf ("%d%% (%s)",
+				    nm_wimax_nsp_get_signal_quality (nsp),
+				    wimax_network_type_to_str (nm_wimax_nsp_get_network_type (nsp)));
+
+	print_string (label, data_str);
+	g_free (label);
+	g_free (data_str);
+}
+#endif
+
 static gchar *
 ip4_address_as_string (guint32 ip)
 {
@@ -205,8 +252,8 @@ ip4_address_as_string (guint32 ip)
 	if (inet_ntop (AF_INET, &tmp_addr, buf, INET_ADDRSTRLEN)) {
 		return g_strdup (buf);
 	} else {
-		nm_warning ("%s: error converting IP4 address 0x%X",
-		            __func__, ntohl (tmp_addr.s_addr));
+		g_warning ("%s: error converting IP4 address 0x%X",
+		           __func__, ntohl (tmp_addr.s_addr));
 		return NULL;
 	}
 }
@@ -226,8 +273,8 @@ ip6_address_as_string (const struct in6_addr *ip)
 		g_string_append_printf (ip6_str, "%02X", ip->s6_addr[0]);
 		for (j = 1; j < 16; j++)
 			g_string_append_printf (ip6_str, " %02X", ip->s6_addr[j]);
-		nm_warning ("%s: error converting IP6 address %s",
-		            __func__, ip6_str->str);
+		g_warning ("%s: error converting IP6 address %s",
+		           __func__, ip6_str->str);
 		g_string_free (ip6_str, TRUE);
 		return NULL;
 	}
@@ -250,8 +297,14 @@ get_dev_state_string (NMDeviceState state)
 		return "connecting (need authentication)";
 	else if (state == NM_DEVICE_STATE_IP_CONFIG)
 		return "connecting (getting IP configuration)";
+	else if (state == NM_DEVICE_STATE_IP_CHECK)
+		return "connecting (checking IP connectivity)";
+	else if (state == NM_DEVICE_STATE_SECONDARIES)
+		return "connecting (starting dependent connections)";
 	else if (state == NM_DEVICE_STATE_ACTIVATED)
 		return "connected";
+	else if (state == NM_DEVICE_STATE_DEACTIVATING)
+		return "disconnecting";
 	else if (state == NM_DEVICE_STATE_FAILED)
 		return "connection failed";
 	return "unknown";
@@ -260,7 +313,6 @@ get_dev_state_string (NMDeviceState state)
 static NMConnection *
 get_connection_for_active (NMActiveConnection *active)
 {
-	NMConnectionScope scope;
 	const char *path;
 
 	g_return_val_if_fail (active != NULL, NULL);
@@ -268,14 +320,7 @@ get_connection_for_active (NMActiveConnection *active)
 	path = nm_active_connection_get_connection (active);
 	g_return_val_if_fail (path != NULL, NULL);
 
-	scope = nm_active_connection_get_scope (active);
-	if (scope == NM_CONNECTION_SCOPE_USER)
-		return (NMConnection *) g_hash_table_lookup (user_connections, path);
-	else if (scope == NM_CONNECTION_SCOPE_SYSTEM)
-		return (NMConnection *) g_hash_table_lookup (system_connections, path);
-
-	g_warning ("error: unknown connection scope");
-	return NULL;
+	return (NMConnection *) g_hash_table_lookup (connections, path);
 }
 
 struct cb_info {
@@ -332,12 +377,22 @@ detail_device (gpointer data, gpointer user_data)
 		print_string ("Type", "Wired");
 	else if (NM_IS_DEVICE_WIFI (device))
 		print_string ("Type", "802.11 WiFi");
-	else if (NM_IS_GSM_DEVICE (device))
-		print_string ("Type", "Mobile Broadband (GSM)");
-	else if (NM_IS_CDMA_DEVICE (device))
-		print_string ("Type", "Mobile Broadband (CDMA)");
-	else if (NM_IS_DEVICE_BT (device))
+	else if (NM_IS_DEVICE_MODEM (device)) {
+		NMDeviceModemCapabilities modem_caps;
+
+		modem_caps = nm_device_modem_get_current_capabilities (NM_DEVICE_MODEM (device));
+		if (modem_caps & NM_DEVICE_MODEM_CAPABILITY_GSM_UMTS)
+			print_string ("Type", "Mobile Broadband (GSM)");
+		else if (modem_caps & NM_DEVICE_MODEM_CAPABILITY_CDMA_EVDO)
+			print_string ("Type", "Mobile Broadband (CDMA)");
+		else
+			print_string ("Type", "Mobile Broadband (unknown)");
+	} else if (NM_IS_DEVICE_BT (device))
 		print_string ("Type", "Bluetooth");
+#if WITH_WIMAX
+	else if (NM_IS_DEVICE_WIMAX (device))
+		print_string ("Type", "WiMAX");
+#endif
 
 	print_string ("Driver", nm_device_get_driver (device) ? nm_device_get_driver (device) : "(unknown)");
 
@@ -353,6 +408,10 @@ detail_device (gpointer data, gpointer user_data)
 		tmp = g_strdup (nm_device_ethernet_get_hw_address (NM_DEVICE_ETHERNET (device)));
 	else if (NM_IS_DEVICE_WIFI (device))
 		tmp = g_strdup (nm_device_wifi_get_hw_address (NM_DEVICE_WIFI (device)));
+#if WITH_WIMAX
+	else if (NM_IS_DEVICE_WIMAX (device))
+		tmp = g_strdup (nm_device_wimax_get_hw_address (NM_DEVICE_WIMAX (device)));
+#endif
 
 	if (tmp) {
 		print_string ("HW Address", tmp);
@@ -418,6 +477,68 @@ detail_device (gpointer data, gpointer user_data)
 			print_string ("  Carrier", "on");
 		else
 			print_string ("  Carrier", "off");
+#if WITH_WIMAX
+	} else if (NM_IS_DEVICE_WIMAX (device)) {
+		NMDeviceWimax *wimax = NM_DEVICE_WIMAX (device);
+		NMWimaxNsp *active_nsp = NULL;
+		const char *active_name = NULL;
+		const GPtrArray *nsps;
+
+		if (nm_device_get_state (device) == NM_DEVICE_STATE_ACTIVATED) {
+			guint tmp_uint;
+			gint tmp_int;
+			const char *tmp_str;
+
+			active_nsp = nm_device_wimax_get_active_nsp (wimax);
+			active_name = active_nsp ? nm_wimax_nsp_get_name (active_nsp) : NULL;
+
+			printf ("\n  Link Status\n");
+
+			tmp_uint = nm_device_wimax_get_center_frequency (wimax);
+			if (tmp_uint)
+				tmp = g_strdup_printf ("%'.1f MHz", (double) tmp_uint / 1000.0);
+			else
+				tmp = g_strdup ("(unknown)");
+			print_string ("  Center Freq.", tmp);
+			g_free (tmp);
+
+			tmp_int = nm_device_wimax_get_rssi (wimax);
+			if (tmp_int)
+				tmp = g_strdup_printf ("%d dBm", tmp_int);
+			else
+				tmp = g_strdup ("(unknown)");
+			print_string ("  RSSI", tmp);
+			g_free (tmp);
+
+			tmp_int = nm_device_wimax_get_cinr (wimax);
+			if (tmp_int)
+				tmp = g_strdup_printf ("%d dB", tmp_int);
+			else
+				tmp = g_strdup ("(unknown)");
+			print_string ("  CINR", tmp);
+			g_free (tmp);
+
+			tmp_int = nm_device_wimax_get_tx_power (wimax);
+			if (tmp_int)
+				tmp = g_strdup_printf ("%'.2f dBm", (float) tmp_int / 2.0);
+			else
+				tmp = g_strdup ("(unknown)");
+			print_string ("  TX Power", tmp);
+			g_free (tmp);
+
+			tmp_str = nm_device_wimax_get_bsid (wimax);
+			if (tmp_str)
+				print_string ("  BSID", tmp_str);
+			else
+				print_string ("  BSID", "(unknown)");
+		}
+
+		printf ("\n  WiMAX NSPs %s\n", active_nsp ? "(* current NSP)" : "");
+
+		nsps = nm_device_wimax_get_nsps (NM_DEVICE_WIMAX (device));
+		if (nsps && nsps->len)
+			g_ptr_array_foreach ((GPtrArray *) nsps, detail_nsp, (gpointer) active_name);
+#endif
 	}
 
 	/* IP Setup info */
@@ -566,12 +687,10 @@ detail_vpn (gpointer data, gpointer user_data)
 static void
 get_one_connection (DBusGConnection *bus,
                     const char *path,
-                    NMConnectionScope scope,
                     GHashTable *table)
 {
 	DBusGProxy *proxy;
 	NMConnection *connection = NULL;
-	const char *service;
 	GError *error = NULL;
 	GHashTable *settings = NULL;
 
@@ -579,10 +698,8 @@ get_one_connection (DBusGConnection *bus,
 	g_return_if_fail (path != NULL);
 	g_return_if_fail (table != NULL);
 
-	service = (scope == NM_CONNECTION_SCOPE_SYSTEM) ?
-		NM_DBUS_SERVICE_SYSTEM_SETTINGS : NM_DBUS_SERVICE_USER_SETTINGS;
-
-	proxy = dbus_g_proxy_new_for_name (bus, service, path, NM_DBUS_IFACE_SETTINGS_CONNECTION);
+	proxy = dbus_g_proxy_new_for_name (bus, NM_DBUS_SERVICE,
+	                                   path, NM_DBUS_IFACE_SETTINGS_CONNECTION);
 	if (!proxy)
 		return;
 
@@ -590,7 +707,7 @@ get_one_connection (DBusGConnection *bus,
 	                        G_TYPE_INVALID,
 	                        DBUS_TYPE_G_MAP_OF_MAP_OF_VARIANT, &settings,
 	                        G_TYPE_INVALID)) {
-		nm_warning ("error: cannot retrieve connection: %s", error ? error->message : "(unknown)");
+		g_warning ("error: cannot retrieve connection: %s", error ? error->message : "(unknown)");
 		goto out;
 	}
 
@@ -598,14 +715,13 @@ get_one_connection (DBusGConnection *bus,
 	g_hash_table_destroy (settings);
 
 	if (!connection) {
-		nm_warning ("error: invalid connection: '%s' / '%s' invalid: %d",
-		            error ? g_type_name (nm_connection_lookup_setting_type_by_quark (error->domain)) : "(unknown)",
-		            error ? error->message : "(unknown)",
-		            error ? error->code : -1);
+		g_warning ("error: invalid connection: '%s' / '%s' invalid: %d",
+		           error ? g_type_name (nm_connection_lookup_setting_type_by_quark (error->domain)) : "(unknown)",
+		           error ? error->message : "(unknown)",
+		           error ? error->code : -1);
 		goto out;
 	}
 
-	nm_connection_set_scope (connection, scope);
 	nm_connection_set_path (connection, path);
 	g_hash_table_insert (table, g_strdup (path), g_object_ref (connection));
 
@@ -616,27 +732,29 @@ out:
 	g_object_unref (proxy);
 }
 
-static void
-get_connections_for_service (DBusGConnection *bus,
-                             NMConnectionScope scope,
-                             GHashTable *table)
+static gboolean
+get_all_connections (void)
 {
 	GError *error = NULL;
-	DBusGProxy *proxy;
+	DBusGConnection *bus;
+	DBusGProxy *proxy = NULL;
 	GPtrArray *paths = NULL;
 	int i;
-	const char *service;
+	gboolean sucess = FALSE;
 
-	service = (scope == NM_CONNECTION_SCOPE_SYSTEM) ?
-		NM_DBUS_SERVICE_SYSTEM_SETTINGS : NM_DBUS_SERVICE_USER_SETTINGS;
+	bus = dbus_g_bus_get (DBUS_BUS_SYSTEM, &error);
+	if (error || !bus) {
+		g_warning ("error: could not connect to dbus");
+		goto out;
+	}
 
 	proxy = dbus_g_proxy_new_for_name (bus,
-	                                   service,
+	                                   NM_DBUS_SERVICE,
 	                                   NM_DBUS_PATH_SETTINGS,
 	                                   NM_DBUS_IFACE_SETTINGS);
 	if (!proxy) {
-		g_warning ("error: failed to create DBus proxy for %s", service);
-		return;
+		g_warning ("error: failed to create DBus proxy for settings service");
+		goto out;
 	}
 
 	if (!dbus_g_proxy_call (proxy, "ListConnections", &error,
@@ -648,33 +766,20 @@ get_connections_for_service (DBusGConnection *bus,
 		goto out;
 	}
 
-	for (i = 0; paths && (i < paths->len); i++)
-		get_one_connection (bus, g_ptr_array_index (paths, i), scope, table);
+	connections = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_object_unref);
 
-out:
-	g_object_unref (proxy);
-}
-
-static gboolean
-get_all_connections (void)
-{
-	DBusGConnection *bus;
-	GError *error = NULL;
-
-	bus = dbus_g_bus_get (DBUS_BUS_SYSTEM, &error);
-	if (error || !bus) {
-		g_warning ("error: could not connect to dbus");
-		return FALSE;
-	}
+	for (i = 0; paths && (i < paths->len); i++)
+		get_one_connection (bus, g_ptr_array_index (paths, i), connections);
 
-	user_connections = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_object_unref);
-	get_connections_for_service (bus, NM_CONNECTION_SCOPE_USER, user_connections);
+	sucess = TRUE;
 
-	system_connections = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_object_unref);
-	get_connections_for_service (bus, NM_CONNECTION_SCOPE_SYSTEM, system_connections);
+out:
+	if (bus)
+		dbus_g_connection_unref (bus);
+	if (proxy)
+		g_object_unref (proxy);
 
-	dbus_g_connection_unref (bus);
-	return TRUE;
+	return sucess;
 }
 
 int
@@ -713,8 +818,7 @@ main (int argc, char *argv[])
 		g_ptr_array_foreach ((GPtrArray *) info.active, detail_vpn, &info);
 
 	g_object_unref (client);
-	g_hash_table_unref (user_connections);
-	g_hash_table_unref (system_connections);
+	g_hash_table_unref (connections);
 
 	return 0;
 }