From f3ea6df16865410d83b71c27fc94abd756f064b0 Mon Sep 17 00:00:00 2001 From: harti Date: Thu, 12 Oct 2006 15:31:23 +0000 Subject: Don't free the buffer with the sysctl value before printing it. --- sbin/sysctl/sysctl.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'sbin/sysctl') diff --git a/sbin/sysctl/sysctl.c b/sbin/sysctl/sysctl.c index 73bf68d..8ab66a3 100644 --- a/sbin/sysctl/sysctl.c +++ b/sbin/sysctl/sysctl.c @@ -330,6 +330,8 @@ S_clockinfo(int l2, void *p) warnx("S_clockinfo %d != %d", l2, sizeof(*ci)); return (0); } +uint32_t *x = (uint32_t *)p; +printf("%06x %06x %06x %06x %06x\n", x[0], x[1], x[2], x[3], x[4]); printf(hflag ? "{ hz = %'d, tick = %'d, profhz = %'d, stathz = %'d }" : "{ hz = %d, tick = %d, profhz = %d, stathz = %d }", ci->hz, ci->tick, ci->profhz, ci->stathz); @@ -694,8 +696,9 @@ show_var(int *oid, int nlen) if (func) { if (!nflag) printf("%s%s", name, sep); + i = (*func)(len, p); free(oval); - return ((*func)(len, p)); + return (i); } /* FALLTHROUGH */ default: -- cgit v1.1