From 88aa8f9771558de797d4f2d0557a2b6f291c2808 Mon Sep 17 00:00:00 2001 From: hselasky Date: Fri, 4 Jul 2014 06:03:54 +0000 Subject: [PATCH] MFC r267960: Don't hide zero-length strings when doing sysctl listings. git-svn-id: svn://svn.freebsd.org/base/stable/10@268243 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f --- sbin/sysctl/sysctl.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sbin/sysctl/sysctl.c b/sbin/sysctl/sysctl.c index a86d659cb..13596450d 100644 --- a/sbin/sysctl/sysctl.c +++ b/sbin/sysctl/sysctl.c @@ -710,9 +710,10 @@ show_var(int *oid, int nlen) warnx("malloc failed"); return (1); } + ctltype = (kind & CTLTYPE); len = j; i = sysctl(oid, nlen, val, &len, 0, 0); - if (i || !len) { + if (i != 0 || (len == 0 && ctltype != CTLTYPE_STRING)) { free(oval); return (1); } @@ -724,7 +725,6 @@ show_var(int *oid, int nlen) } val[len] = '\0'; p = val; - ctltype = (kind & CTLTYPE); sign = ctl_sign[ctltype]; intlen = ctl_size[ctltype]; -- 2.45.0