]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Add sysctlbyname system call
authormjg <mjg@FreeBSD.org>
Tue, 3 Sep 2019 04:16:30 +0000 (04:16 +0000)
committermjg <mjg@FreeBSD.org>
Tue, 3 Sep 2019 04:16:30 +0000 (04:16 +0000)
commit286ae5bd6b5d86148741a589f277ac299e3cff4e
tree1429a990e8caaa2a8fbe737f4d39f86abdcc3ab6
parent116c38c27d70d9f3f95a0dc57caca7fb717272ef
Add sysctlbyname system call

Previously userspace would issue one syscall to resolve the sysctl and then
another one to actually use it. Do it all in one trip.

Fallback is provided in case newer libc happens to be running on an older
kernel.

Submitted by: Pawel Biernacki
Reported by: kib, brooks
Differential Revision: https://reviews.freebsd.org/D17282
20 files changed:
lib/libc/gen/sysctlbyname.c
lib/libc/sys/Symbol.map
sys/compat/freebsd32/freebsd32_misc.c
sys/compat/freebsd32/freebsd32_proto.h
sys/compat/freebsd32/freebsd32_syscall.h
sys/compat/freebsd32/freebsd32_syscalls.c
sys/compat/freebsd32/freebsd32_sysent.c
sys/compat/freebsd32/freebsd32_systrace_args.c
sys/compat/freebsd32/syscalls.master
sys/kern/capabilities.conf
sys/kern/init_sysent.c
sys/kern/kern_sysctl.c
sys/kern/syscalls.c
sys/kern/syscalls.master
sys/kern/systrace_args.c
sys/sys/param.h
sys/sys/syscall.h
sys/sys/syscall.mk
sys/sys/sysctl.h
sys/sys/sysproto.h