Module Name:    src
Committed By:   dsl
Date:           Sat Jun  2 21:38:09 UTC 2012

Modified Files:
        src/sbin/sysctl: sysctl.c

Log Message:
Add support for unsigned decimal values.


To generate a diff of this commit:
cvs rdiff -u -r1.142 -r1.143 src/sbin/sysctl/sysctl.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sbin/sysctl/sysctl.c
diff -u src/sbin/sysctl/sysctl.c:1.142 src/sbin/sysctl/sysctl.c:1.143
--- src/sbin/sysctl/sysctl.c:1.142	Thu Mar 15 02:02:22 2012
+++ src/sbin/sysctl/sysctl.c	Sat Jun  2 21:38:09 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: sysctl.c,v 1.142 2012/03/15 02:02:22 joerg Exp $ */
+/*	$NetBSD: sysctl.c,v 1.143 2012/06/02 21:38:09 dsl Exp $ */
 
 /*-
  * Copyright (c) 2003 The NetBSD Foundation, Inc.
@@ -68,7 +68,7 @@ __COPYRIGHT("@(#) Copyright (c) 1993\
 #if 0
 static char sccsid[] = "@(#)sysctl.c	8.1 (Berkeley) 6/6/93";
 #else
-__RCSID("$NetBSD: sysctl.c,v 1.142 2012/03/15 02:02:22 joerg Exp $");
+__RCSID("$NetBSD: sysctl.c,v 1.143 2012/06/02 21:38:09 dsl Exp $");
 #endif
 #endif /* not lint */
 
@@ -1177,6 +1177,9 @@ parse_create(char *l)
 				case 'p':
 					flags |= CTLFLAG_PRIVATE;
 					break;
+				case 'u':
+					flags |= CTLFLAG_UNSIGNED;
+					break;
 				case 'x':
 					flags |= CTLFLAG_HEX;
 					break;
@@ -1887,6 +1890,8 @@ display_number(const struct sysctlnode *
 			printf("0x%0*x", (int)sz * 2, i);
 		else if (node->sysctl_flags & CTLFLAG_HEX)
 			printf("%#x", i);
+		else if (node->sysctl_flags & CTLFLAG_UNSIGNED)
+			printf("%u", i);
 		else
 			printf("%d", i);
 		break;
@@ -1905,6 +1910,8 @@ display_number(const struct sysctlnode *
 			printf("0x%0*" PRIx64, (int)sz * 2, q);
 		else if (node->sysctl_flags & CTLFLAG_HEX)
 			printf("%#" PRIx64, q);
+		else if (node->sysctl_flags & CTLFLAG_UNSIGNED)
+			printf("%" PRIu64, q);
 		else
 			printf("%" PRIu64, q);
 		break;

Reply via email to