diff options
author | kan <kan@FreeBSD.org> | 2007-05-19 04:53:14 +0000 |
---|---|---|
committer | kan <kan@FreeBSD.org> | 2007-05-19 04:53:14 +0000 |
commit | 3ef9d41401d2f9d9b32d2c476de4aee9b8049188 (patch) | |
tree | cdd8870b9c8f2a324e8212d4906223bc8c7df8a4 /sys/kern/kern_mib.c | |
parent | 00c7c13171556c9188f645bba9fd6c8847797591 (diff) | |
download | FreeBSD-src-3ef9d41401d2f9d9b32d2c476de4aee9b8049188.zip FreeBSD-src-3ef9d41401d2f9d9b32d2c476de4aee9b8049188.tar.gz |
Add kern.arnd sysctl. SSP code uses it to initialize the stack guard
magic value.
Submitted by: Jeremie Le Hen <jeremie@le-hen.org>
Diffstat (limited to 'sys/kern/kern_mib.c')
-rw-r--r-- | sys/kern/kern_mib.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/sys/kern/kern_mib.c b/sys/kern/kern_mib.c index 707afd8..5d14529 100644 --- a/sys/kern/kern_mib.c +++ b/sys/kern/kern_mib.c @@ -152,6 +152,18 @@ SYSCTL_INT(_hw, HW_PAGESIZE, pagesize, CTLFLAG_RD, 0, PAGE_SIZE, "System memory page size"); static int +sysctl_kern_arnd(SYSCTL_HANDLER_ARGS) +{ + u_long val; + + arc4rand(&val, sizeof(val), 0); + return (sysctl_handle_long(oidp, &val, 0, req)); +} + +SYSCTL_PROC(_kern, KERN_ARND, arandom, CTLFLAG_RD, + 0, 0, sysctl_kern_arnd, "L", "arc4rand"); + +static int sysctl_hw_physmem(SYSCTL_HANDLER_ARGS) { u_long val; |