root/include/uapi/linux/random.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
   2 /*
   3  * include/linux/random.h
   4  *
   5  * Include file for the random number generator.
   6  */
   7 
   8 #ifndef _UAPI_LINUX_RANDOM_H
   9 #define _UAPI_LINUX_RANDOM_H
  10 
  11 #include <linux/types.h>
  12 #include <linux/ioctl.h>
  13 #include <linux/irqnr.h>
  14 
  15 /* ioctl()'s for the random number generator */
  16 
  17 /* Get the entropy count. */
  18 #define RNDGETENTCNT    _IOR( 'R', 0x00, int )
  19 
  20 /* Add to (or subtract from) the entropy count.  (Superuser only.) */
  21 #define RNDADDTOENTCNT  _IOW( 'R', 0x01, int )
  22 
  23 /* Get the contents of the entropy pool.  (Superuser only.) */
  24 #define RNDGETPOOL      _IOR( 'R', 0x02, int [2] )
  25 
  26 /* 
  27  * Write bytes into the entropy pool and add to the entropy count.
  28  * (Superuser only.)
  29  */
  30 #define RNDADDENTROPY   _IOW( 'R', 0x03, int [2] )
  31 
  32 /* Clear entropy count to 0.  (Superuser only.) */
  33 #define RNDZAPENTCNT    _IO( 'R', 0x04 )
  34 
  35 /* Clear the entropy pool and associated counters.  (Superuser only.) */
  36 #define RNDCLEARPOOL    _IO( 'R', 0x06 )
  37 
  38 /* Reseed CRNG.  (Superuser only.) */
  39 #define RNDRESEEDCRNG   _IO( 'R', 0x07 )
  40 
  41 struct rand_pool_info {
  42         int     entropy_count;
  43         int     buf_size;
  44         __u32   buf[0];
  45 };
  46 
  47 /*
  48  * Flags for getrandom(2)
  49  *
  50  * GRND_NONBLOCK        Don't block and return EAGAIN instead
  51  * GRND_RANDOM          Use the /dev/random pool instead of /dev/urandom
  52  */
  53 #define GRND_NONBLOCK   0x0001
  54 #define GRND_RANDOM     0x0002
  55 
  56 #endif /* _UAPI_LINUX_RANDOM_H */

/* [<][>][^][v][top][bottom][index][help] */