diff options
author | ed <ed@FreeBSD.org> | 2010-02-21 13:57:02 +0000 |
---|---|---|
committer | ed <ed@FreeBSD.org> | 2010-02-21 13:57:02 +0000 |
commit | 1fdea921e1450bf99dc432803cd6c88e08540a21 (patch) | |
tree | fcb4fe1d12f11b6cab916731649d8e0d8c2645b0 /lib/libc/gen/sysctl.c | |
parent | 24f8e6df2531b9453d13e5fc72bb019b22e630a8 (diff) | |
download | FreeBSD-src-1fdea921e1450bf99dc432803cd6c88e08540a21.zip FreeBSD-src-1fdea921e1450bf99dc432803cd6c88e08540a21.tar.gz |
Add proper const keywords to sysctl(3) parameters.
The `name' and `newp' arguments can be marked const, because the buffers
they refer to are never changed. While there, perform some other
cleanups:
- Remove K&R from sysctl.c.
- Implement sysctlbyname() using sysctlnametomib() to prevent
duplication of an undocumented kernel interface.
- Fix some whitespace nits.
It seems the prototypes are now in sync with NetBSD as well.
Diffstat (limited to 'lib/libc/gen/sysctl.c')
-rw-r--r-- | lib/libc/gen/sysctl.c | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/lib/libc/gen/sysctl.c b/lib/libc/gen/sysctl.c index eb6418e..fbc2c0c 100644 --- a/lib/libc/gen/sysctl.c +++ b/lib/libc/gen/sysctl.c @@ -43,15 +43,12 @@ __FBSDID("$FreeBSD$"); #include <unistd.h> #include <string.h> -extern int __sysctl(int *name, u_int namelen, void *oldp, size_t *oldlenp, - void *newp, size_t newlen); +extern int __sysctl(const int *name, u_int namelen, void *oldp, + size_t *oldlenp, const void *newp, size_t newlen); int -sysctl(name, namelen, oldp, oldlenp, newp, newlen) - int *name; - u_int namelen; - void *oldp, *newp; - size_t *oldlenp, newlen; +sysctl(const int *name, u_int namelen, void *oldp, size_t *oldlenp, + const void *newp, size_t newlen) { if (name[0] != CTL_USER) return (__sysctl(name, namelen, oldp, oldlenp, newp, newlen)); |