Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 2 Nov 2016 17:33:22 +0000 (UTC)
From:      Andriy Gapon <avg@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org
Subject:   svn commit: r308223 - vendor/illumos/dist/lib/libnvpair
Message-ID:  <201611021733.uA2HXM0A016889@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: avg
Date: Wed Nov  2 17:33:22 2016
New Revision: 308223
URL: https://svnweb.freebsd.org/changeset/base/308223

Log:
  5752 dump_nvlist() is not aware of boolean array
  
  illumos/illumos-gate@ee3c499ad1e4fc884a11b2bc6490787b788bf84a
  https://github.com/illumos/illumos-gate/commit/ee3c499ad1e4fc884a11b2bc6490787b788bf84a
  
  https://www.illumos.org/issues/5752
    dump_nvlist() is not aware of the boolean array value type:
    bad config type 24 for "foobar"
  
  Reviewed by: Dan Kimmel <dan.kimmel@delphix.com>
  Reviewed by: Matthew Ahrens <mahrens@delphix.com>
  Reviewed by: Will Andrews <will@freebsd.org>
  Approved by: Robert Mustacchi <rm@joyent.com>
  Author: Andriy Gapon <andriy.gapon@clusterhq.com>

Modified:
  vendor/illumos/dist/lib/libnvpair/libnvpair.c

Modified: vendor/illumos/dist/lib/libnvpair/libnvpair.c
==============================================================================
--- vendor/illumos/dist/lib/libnvpair/libnvpair.c	Wed Nov  2 17:32:31 2016	(r308222)
+++ vendor/illumos/dist/lib/libnvpair/libnvpair.c	Wed Nov  2 17:33:22 2016	(r308223)
@@ -794,6 +794,7 @@ dump_nvlist(nvlist_t *list, int indent)
 {
 	nvpair_t	*elem = NULL;
 	boolean_t	bool_value;
+	boolean_t	*bool_array_value;
 	nvlist_t	*nvlist_value;
 	nvlist_t	**nvlist_array_value;
 	uint_t		i, count;
@@ -854,6 +855,16 @@ dump_nvlist(nvlist_t *list, int indent)
 			NVP(elem, string, char *, char *, "'%s'");
 			break;
 
+		case DATA_TYPE_BOOLEAN_ARRAY:
+			(void) nvpair_value_boolean_array(elem,
+			    &bool_array_value, &count);
+			for (i = 0; i < count; i++) {
+				(void) printf("%*s%s[%d]: %s\n", indent, "",
+				    nvpair_name(elem), i,
+				    bool_array_value[i] ? "true" : "false");
+			}
+			break;
+
 		case DATA_TYPE_BYTE_ARRAY:
 			NVPA(elem, byte_array, uchar_t, int, "%u");
 			break;



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201611021733.uA2HXM0A016889>