82710b55b6
The general idea here is to provide userspace programs with well-defined sources of entropy, in a fashion that doesn't require opening a new file descriptor (ulimits) or accessing paths (/dev/urandom may be restricted by chroot or capsicum). getrandom(2) is the more general API, and comes from the Linux world. Since our urandom and random devices are identical, the GRND_RANDOM flag is ignored. getentropy(3) is added as a compatibility shim for the OpenBSD API. truss(1) support is included. Tests for both system calls are provided. Coverage is believed to be at least as comprehensive as LTP getrandom(2) test coverage. Additionally, instructions for running the LTP tests directly against FreeBSD are provided in the "Test Plan" section of the Differential revision linked below. (They pass, of course.) PR: 194204 Reported by: David CARLIER <david.carlier AT hardenedbsd.org> Discussed with: cperciva, delphij, jhb, markj Relnotes: maybe Differential Revision: https://reviews.freebsd.org/D14500 |
||
---|---|---|
.. | ||
aarch64-cloudabi32.c | ||
aarch64-cloudabi64.c | ||
aarch64-freebsd.c | ||
amd64-cloudabi32.c | ||
amd64-cloudabi64.c | ||
amd64-freebsd32.c | ||
amd64-freebsd.c | ||
amd64-linux32.c | ||
amd64-linux.c | ||
arm-freebsd.c | ||
extern.h | ||
i386-cloudabi32.c | ||
i386-freebsd.c | ||
i386-linux.c | ||
main.c | ||
Makefile | ||
Makefile.depend | ||
mips-freebsd.c | ||
powerpc64-freebsd32.c | ||
powerpc64-freebsd.c | ||
powerpc-freebsd.c | ||
riscv64-freebsd.c | ||
setup.c | ||
sparc64-freebsd.c | ||
syscall.h | ||
syscalls.c | ||
truss.1 | ||
truss.h |