summary refs log tree commit diff
path: root/cli
diff options
context:
space:
mode:
authorMichael Biebl <biebl@debian.org>2012-10-26 21:32:57 +0200
committerMichael Biebl <biebl@debian.org>2012-10-26 21:32:57 +0200
commit36cb2f364a821e1be50b23e03a18891ec55adb06 (patch)
treedcc7ff4019373acf1583c3271c4efbddbf43aa6c /cli
parent8c98b34228abb4dfde822ad89106b4d8b2287639 (diff)
Imported Upstream version 0.9.6.4 upstream/0.9.6.4
Diffstat (limited to 'cli')
-rw-r--r--cli/Makefile.in35
-rw-r--r--cli/src/Makefile.in29
-rw-r--r--cli/src/devices.c86
3 files changed, 136 insertions, 14 deletions
diff --git a/cli/Makefile.in b/cli/Makefile.in
index fc36840c..be1b0e76 100644
--- a/cli/Makefile.in
+++ b/cli/Makefile.in
@@ -1,4 +1,4 @@
-# Makefile.in generated by automake 1.11.3 from Makefile.am.
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
@@ -15,6 +15,23 @@
 
 @SET_MAKE@
 VPATH = @srcdir@
+am__make_dryrun = \
+  { \
+    am__dry=no; \
+    case $$MAKEFLAGS in \
+      *\\[\ \	]*) \
+        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
+          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+      *) \
+        for am__flg in $$MAKEFLAGS; do \
+          case $$am__flg in \
+            *=*|--*) ;; \
+            *n*) am__dry=yes; break;; \
+          esac; \
+        done;; \
+    esac; \
+    test $$am__dry = yes; \
+  }
 pkgdatadir = $(datadir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
@@ -68,6 +85,11 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
 	install-pdf-recursive install-ps-recursive install-recursive \
 	installcheck-recursive installdirs-recursive pdf-recursive \
 	ps-recursive uninstall-recursive
+am__can_run_installinfo = \
+  case $$AM_UPDATE_INFO_DIR in \
+    n|no|NO) false;; \
+    *) (install-info --version) >/dev/null 2>&1;; \
+  esac
 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive	\
   distclean-recursive maintainer-clean-recursive
 AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
@@ -544,13 +566,10 @@ distdir: $(DISTFILES)
 	done
 	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
-	    test -d "$(distdir)/$$subdir" \
-	    || $(MKDIR_P) "$(distdir)/$$subdir" \
-	    || exit 1; \
-	  fi; \
-	done
-	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
-	  if test "$$subdir" = .; then :; else \
+	    $(am__make_dryrun) \
+	      || test -d "$(distdir)/$$subdir" \
+	      || $(MKDIR_P) "$(distdir)/$$subdir" \
+	      || exit 1; \
 	    dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
 	    $(am__relativize); \
 	    new_distdir=$$reldir; \
diff --git a/cli/src/Makefile.in b/cli/src/Makefile.in
index 56cf4049..427e22a4 100644
--- a/cli/src/Makefile.in
+++ b/cli/src/Makefile.in
@@ -1,4 +1,4 @@
-# Makefile.in generated by automake 1.11.3 from Makefile.am.
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
@@ -16,6 +16,23 @@
 @SET_MAKE@
 
 VPATH = @srcdir@
+am__make_dryrun = \
+  { \
+    am__dry=no; \
+    case $$MAKEFLAGS in \
+      *\\[\ \	]*) \
+        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
+          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+      *) \
+        for am__flg in $$MAKEFLAGS; do \
+          case $$am__flg in \
+            *=*|--*) ;; \
+            *n*) am__dry=yes; break;; \
+          esac; \
+        done;; \
+    esac; \
+    test $$am__dry = yes; \
+  }
 pkgdatadir = $(datadir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
@@ -97,6 +114,11 @@ am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
 am__v_GEN_0 = @echo "  GEN   " $@;
 SOURCES = $(nmcli_SOURCES)
 DIST_SOURCES = $(nmcli_SOURCES)
+am__can_run_installinfo = \
+  case $$AM_UPDATE_INFO_DIR in \
+    n|no|NO) false;; \
+    *) (install-info --version) >/dev/null 2>&1;; \
+  esac
 ETAGS = etags
 CTAGS = ctags
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -406,8 +428,11 @@ $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 $(am__aclocal_m4_deps):
 install-binPROGRAMS: $(bin_PROGRAMS)
 	@$(NORMAL_INSTALL)
-	test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
 	@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
+	if test -n "$$list"; then \
+	  echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
+	  $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \
+	fi; \
 	for p in $$list; do echo "$$p $$p"; done | \
 	sed 's/$(EXEEXT)$$//' | \
 	while read p p1; do if test -f $$p || test -f $$p1; \
diff --git a/cli/src/devices.c b/cli/src/devices.c
index 6b9367b4..420fd403 100644
--- a/cli/src/devices.c
+++ b/cli/src/devices.c
@@ -90,14 +90,16 @@ static NmcOutputField nmc_fields_dev_list_sections[] = {
 	{"DHCP4",             N_("DHCP4"),             0, NULL, 0},  /* 8 */
 	{"IP6",               N_("IP6"),               0, NULL, 0},  /* 9 */
 	{"DHCP6",             N_("DHCP6"),             0, NULL, 0},  /* 10 */
+	{"BOND",              N_("BOND"),              0, NULL, 0},  /* 11 */
+	{"VLAN",              N_("VLAN"),              0, NULL, 0},  /* 12 */
 	{NULL,                NULL,                    0, NULL, 0}
 };
 #if WITH_WIMAX
-#define NMC_FIELDS_DEV_LIST_SECTIONS_ALL     "GENERAL,CAPABILITIES,WIFI-PROPERTIES,AP,WIRED-PROPERTIES,WIMAX-PROPERTIES,NSP,IP4,DHCP4,IP6,DHCP6"
-#define NMC_FIELDS_DEV_LIST_SECTIONS_COMMON  "GENERAL,CAPABILITIES,WIFI-PROPERTIES,AP,WIRED-PROPERTIES,WIMAX-PROPERTIES,NSP,IP4,DHCP4,IP6,DHCP6"
+#define NMC_FIELDS_DEV_LIST_SECTIONS_ALL     "GENERAL,CAPABILITIES,BOND,VLAN,WIFI-PROPERTIES,AP,WIRED-PROPERTIES,WIMAX-PROPERTIES,NSP,IP4,DHCP4,IP6,DHCP6"
+#define NMC_FIELDS_DEV_LIST_SECTIONS_COMMON  "GENERAL,CAPABILITIES,BOND,VLAN,WIFI-PROPERTIES,AP,WIRED-PROPERTIES,WIMAX-PROPERTIES,NSP,IP4,DHCP4,IP6,DHCP6"
 #else
-#define NMC_FIELDS_DEV_LIST_SECTIONS_ALL     "GENERAL,CAPABILITIES,WIFI-PROPERTIES,AP,WIRED-PROPERTIES,IP4,DHCP4,IP6,DHCP6"
-#define NMC_FIELDS_DEV_LIST_SECTIONS_COMMON  "GENERAL,CAPABILITIES,WIFI-PROPERTIES,AP,WIRED-PROPERTIES,IP4,DHCP4,IP6,DHCP6"
+#define NMC_FIELDS_DEV_LIST_SECTIONS_ALL     "GENERAL,CAPABILITIES,BOND,VLAN,WIFI-PROPERTIES,AP,WIRED-PROPERTIES,IP4,DHCP4,IP6,DHCP6"
+#define NMC_FIELDS_DEV_LIST_SECTIONS_COMMON  "GENERAL,CAPABILITIES,BOND,VLAN,WIFI-PROPERTIES,AP,WIRED-PROPERTIES,IP4,DHCP4,IP6,DHCP6"
 #endif
 
 /* Available fields for 'dev list' - GENERAL part */
@@ -210,6 +212,24 @@ static NmcOutputField nmc_fields_dev_wimax_list[] = {
 #define NMC_FIELDS_DEV_WIMAX_LIST_FOR_DEV_LIST  "NAME,"NMC_FIELDS_DEV_WIMAX_LIST_COMMON
 #endif
 
+/* Available fields for 'dev list' - BOND part */
+static NmcOutputField nmc_fields_dev_list_bond_prop[] = {
+	{"NAME",            N_("NAME"),     18, NULL, 0},  /* 0 */
+	{"SLAVES",          N_("SLAVES"),   20, NULL, 0},  /* 1 */
+	{NULL,              NULL,            0, NULL, 0}
+};
+#define NMC_FIELDS_DEV_LIST_BOND_PROP_ALL     "NAME,SLAVES"
+#define NMC_FIELDS_DEV_LIST_BOND_PROP_COMMON  "NAME,SLAVES"
+
+/* Available fields for 'dev list' - VLAN part */
+static NmcOutputField nmc_fields_dev_list_vlan_prop[] = {
+	{"NAME",            N_("NAME"),     18, NULL, 0},  /* 0 */
+	{"ID",              N_("ID"),        5, NULL, 0},  /* 1 */
+	{NULL,              NULL,            0, NULL, 0}
+};
+#define NMC_FIELDS_DEV_LIST_VLAN_PROP_ALL     "NAME,ID"
+#define NMC_FIELDS_DEV_LIST_VLAN_PROP_COMMON  "NAME,ID"
+
 
 /* glib main loop variable - defined in nmcli.c */
 extern GMainLoop *loop;
@@ -627,6 +647,7 @@ show_device_info (gpointer data, gpointer user_data)
 			was_output = TRUE;
 		}
 
+
 		/* Wireless specific information */
 		if ((NM_IS_DEVICE_WIFI (device))) {
 			NMDeviceWifiCapabilities wcaps;
@@ -790,6 +811,63 @@ show_device_info (gpointer data, gpointer user_data)
 			if (dhcp6 && !strcasecmp (nmc_fields_dev_list_sections[section_idx].name, nmc_fields_dev_list_sections[10].name))
 				was_output = print_dhcp6_config (dhcp6, nmc, nmc_fields_dev_list_sections[10].name);
 		}
+
+		/* Bond-specific information */
+		if ((NM_IS_DEVICE_BOND (device))) {
+			if (!strcasecmp (nmc_fields_dev_list_sections[section_idx].name, nmc_fields_dev_list_sections[11].name)) {
+				const GPtrArray *slaves;
+				GString *bond_slaves_str;
+				int idx;
+
+				bond_slaves_str = g_string_new (NULL);
+				slaves = nm_device_bond_get_slaves (NM_DEVICE_BOND (device));
+				for (idx = 0; slaves && idx < slaves->len; idx++) {
+					NMDevice *slave = g_ptr_array_index (slaves, idx);
+					const char *iface = nm_device_get_iface (slave);
+
+					g_string_append (bond_slaves_str, iface);
+					g_string_append_c (bond_slaves_str, ' ');
+				}
+				if (bond_slaves_str->len > 0)
+					g_string_truncate (bond_slaves_str, bond_slaves_str->len-1);  /* Chop off last space */
+
+				nmc->allowed_fields = nmc_fields_dev_list_bond_prop;
+				nmc->print_fields.flags = multiline_flag | mode_flag | escape_flag | NMC_PF_FLAG_FIELD_NAMES;
+				nmc->print_fields.indices = parse_output_fields (NMC_FIELDS_DEV_LIST_BOND_PROP_ALL, nmc->allowed_fields, NULL);
+				print_fields (nmc->print_fields, nmc->allowed_fields); /* Print header */
+
+				nmc->allowed_fields[0].value = nmc_fields_dev_list_sections[11].name;  /* "BOND" */
+				nmc->allowed_fields[1].value = bond_slaves_str->str;
+
+				nmc->print_fields.flags = multiline_flag | mode_flag | escape_flag | NMC_PF_FLAG_SECTION_PREFIX;
+				print_fields (nmc->print_fields, nmc->allowed_fields); /* Print values */
+
+				g_string_free (bond_slaves_str, TRUE);
+				was_output = TRUE;
+			}
+		}
+
+		/* VLAN-specific information */
+		if ((NM_IS_DEVICE_VLAN (device))) {
+			if (!strcasecmp (nmc_fields_dev_list_sections[section_idx].name, nmc_fields_dev_list_sections[12].name)) {
+				char * vlan_id_str = g_strdup_printf ("%u", nm_device_vlan_get_vlan_id (NM_DEVICE_VLAN (device)));
+
+				nmc->allowed_fields = nmc_fields_dev_list_vlan_prop;
+				nmc->print_fields.flags = multiline_flag | mode_flag | escape_flag | NMC_PF_FLAG_FIELD_NAMES;
+				nmc->print_fields.indices = parse_output_fields (NMC_FIELDS_DEV_LIST_VLAN_PROP_ALL, nmc->allowed_fields, NULL);
+				print_fields (nmc->print_fields, nmc->allowed_fields); /* Print header */
+
+				nmc->allowed_fields[0].value = nmc_fields_dev_list_sections[12].name;  /* "VLAN" */
+				nmc->allowed_fields[1].value = vlan_id_str;
+
+				nmc->print_fields.flags = multiline_flag | mode_flag | escape_flag | NMC_PF_FLAG_SECTION_PREFIX;
+				print_fields (nmc->print_fields, nmc->allowed_fields); /* Print values */
+
+				g_free (vlan_id_str);
+				was_output = TRUE;
+			}
+		}
+
 	}
 
 	if (sections_array)