/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ /* * include/linux/random.h * * Include file for the random number generator. */ #ifndef _UAPI_LINUX_RANDOM_H #define _UAPI_LINUX_RANDOM_H #include <linux/types.h> #include <linux/ioctl.h> #include <linux/irqnr.h> /* ioctl()'s for the random number generator */ /* Get the entropy count. */ #define RNDGETENTCNT … /* Add to (or subtract from) the entropy count. (Superuser only.) */ #define RNDADDTOENTCNT … /* Get the contents of the entropy pool. (Superuser only.) (Removed in 2.6.9-rc2.) */ #define RNDGETPOOL … /* * Write bytes into the entropy pool and add to the entropy count. * (Superuser only.) */ #define RNDADDENTROPY … /* Clear entropy count to 0. (Superuser only.) */ #define RNDZAPENTCNT … /* Clear the entropy pool and associated counters. (Superuser only.) */ #define RNDCLEARPOOL … /* Reseed CRNG. (Superuser only.) */ #define RNDRESEEDCRNG … struct rand_pool_info { … }; /* * Flags for getrandom(2) * * GRND_NONBLOCK Don't block and return EAGAIN instead * GRND_RANDOM No effect * GRND_INSECURE Return non-cryptographic random bytes */ #define GRND_NONBLOCK … #define GRND_RANDOM … #define GRND_INSECURE … /** * struct vgetrandom_opaque_params - arguments for allocating memory for vgetrandom * * @size_per_opaque_state: Size of each state that is to be passed to vgetrandom(). * @mmap_prot: Value of the prot argument in mmap(2). * @mmap_flags: Value of the flags argument in mmap(2). * @reserved: Reserved for future use. */ struct vgetrandom_opaque_params { … }; #endif /* _UAPI_LINUX_RANDOM_H */