Module Name: src
Committed By: dyoung
Date: Mon Aug 24 20:53:00 UTC 2009
Modified Files:
src/sys/kern: kern_sysctl.c
Log Message:
In sysctl_create(), the first character of sysctl_name is
sysctl_name[0], so write that instead of sysctl_name[sz] (where sz
just happened to be set to 0 in the previous line).
Also in sysctl_create(), give the length of the sysctl_name its
own variable, nsz, and reserve sz for expressing the size of the
node's value.
No functional change intended.
To generate a diff of this commit:
cvs rdiff -u -r1.224 -r1.225 src/sys/kern/kern_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/sys/kern/kern_sysctl.c
diff -u src/sys/kern/kern_sysctl.c:1.224 src/sys/kern/kern_sysctl.c:1.225
--- src/sys/kern/kern_sysctl.c:1.224 Fri Aug 21 22:51:00 2009
+++ src/sys/kern/kern_sysctl.c Mon Aug 24 20:53:00 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: kern_sysctl.c,v 1.224 2009/08/21 22:51:00 dyoung Exp $ */
+/* $NetBSD: kern_sysctl.c,v 1.225 2009/08/24 20:53:00 dyoung Exp $ */
/*-
* Copyright (c) 2003, 2007, 2008 The NetBSD Foundation, Inc.
@@ -68,7 +68,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: kern_sysctl.c,v 1.224 2009/08/21 22:51:00 dyoung Exp $");
+__KERNEL_RCSID(0, "$NetBSD: kern_sysctl.c,v 1.225 2009/08/24 20:53:00 dyoung Exp $");
#include "opt_defcorename.h"
#include "ksyms.h"
@@ -693,7 +693,7 @@
#endif
{
struct sysctlnode nnode, *node, *pnode;
- int error, ni, at, nm, type, sz, flags, anum, v;
+ int error, ni, at, nm, type, nsz, sz, flags, anum, v;
void *own;
KASSERT(rw_write_held(&sysctl_treelock));
@@ -775,33 +775,33 @@
#endif /* NKSYMS > 0 */
if (nm < 0 && nm != CTL_CREATE)
return (EINVAL);
- sz = 0;
/*
* the name can't start with a digit
*/
- if (nnode.sysctl_name[sz] >= '0' &&
- nnode.sysctl_name[sz] <= '9')
+ if (nnode.sysctl_name[0] >= '0' &&
+ nnode.sysctl_name[0] <= '9')
return (EINVAL);
/*
* the name must be only alphanumerics or - or _, longer than
* 0 bytes and less that SYSCTL_NAMELEN
*/
- while (sz < SYSCTL_NAMELEN && nnode.sysctl_name[sz] != '\0') {
- if ((nnode.sysctl_name[sz] >= '0' &&
- nnode.sysctl_name[sz] <= '9') ||
- (nnode.sysctl_name[sz] >= 'A' &&
- nnode.sysctl_name[sz] <= 'Z') ||
- (nnode.sysctl_name[sz] >= 'a' &&
- nnode.sysctl_name[sz] <= 'z') ||
- nnode.sysctl_name[sz] == '-' ||
- nnode.sysctl_name[sz] == '_')
- sz++;
+ nsz = 0;
+ while (nsz < SYSCTL_NAMELEN && nnode.sysctl_name[nsz] != '\0') {
+ if ((nnode.sysctl_name[nsz] >= '0' &&
+ nnode.sysctl_name[nsz] <= '9') ||
+ (nnode.sysctl_name[nsz] >= 'A' &&
+ nnode.sysctl_name[nsz] <= 'Z') ||
+ (nnode.sysctl_name[nsz] >= 'a' &&
+ nnode.sysctl_name[nsz] <= 'z') ||
+ nnode.sysctl_name[nsz] == '-' ||
+ nnode.sysctl_name[nsz] == '_')
+ nsz++;
else
return (EINVAL);
}
- if (sz == 0 || sz == SYSCTL_NAMELEN)
+ if (nsz == 0 || nsz == SYSCTL_NAMELEN)
return (EINVAL);
/*