1*53ee8cc1Swenshuai.xi /* 2*53ee8cc1Swenshuai.xi * include/linux/random.h 3*53ee8cc1Swenshuai.xi * 4*53ee8cc1Swenshuai.xi * Include file for the random number generator. 5*53ee8cc1Swenshuai.xi */ 6*53ee8cc1Swenshuai.xi 7*53ee8cc1Swenshuai.xi #ifndef _LINUX_RANDOM_H 8*53ee8cc1Swenshuai.xi #define _LINUX_RANDOM_H 9*53ee8cc1Swenshuai.xi 10*53ee8cc1Swenshuai.xi #include <linux/ioctl.h> 11*53ee8cc1Swenshuai.xi 12*53ee8cc1Swenshuai.xi /* ioctl()'s for the random number generator */ 13*53ee8cc1Swenshuai.xi 14*53ee8cc1Swenshuai.xi /* Get the entropy count. */ 15*53ee8cc1Swenshuai.xi #define RNDGETENTCNT _IOR( 'R', 0x00, int ) 16*53ee8cc1Swenshuai.xi 17*53ee8cc1Swenshuai.xi /* Add to (or subtract from) the entropy count. (Superuser only.) */ 18*53ee8cc1Swenshuai.xi #define RNDADDTOENTCNT _IOW( 'R', 0x01, int ) 19*53ee8cc1Swenshuai.xi 20*53ee8cc1Swenshuai.xi /* Get the contents of the entropy pool. (Superuser only.) */ 21*53ee8cc1Swenshuai.xi #define RNDGETPOOL _IOR( 'R', 0x02, int [2] ) 22*53ee8cc1Swenshuai.xi 23*53ee8cc1Swenshuai.xi /* 24*53ee8cc1Swenshuai.xi * Write bytes into the entropy pool and add to the entropy count. 25*53ee8cc1Swenshuai.xi * (Superuser only.) 26*53ee8cc1Swenshuai.xi */ 27*53ee8cc1Swenshuai.xi #define RNDADDENTROPY _IOW( 'R', 0x03, int [2] ) 28*53ee8cc1Swenshuai.xi 29*53ee8cc1Swenshuai.xi /* Clear entropy count to 0. (Superuser only.) */ 30*53ee8cc1Swenshuai.xi #define RNDZAPENTCNT _IO( 'R', 0x04 ) 31*53ee8cc1Swenshuai.xi 32*53ee8cc1Swenshuai.xi /* Clear the entropy pool and associated counters. (Superuser only.) */ 33*53ee8cc1Swenshuai.xi #define RNDCLEARPOOL _IO( 'R', 0x06 ) 34*53ee8cc1Swenshuai.xi 35*53ee8cc1Swenshuai.xi struct rand_pool_info { 36*53ee8cc1Swenshuai.xi int entropy_count; 37*53ee8cc1Swenshuai.xi int buf_size; 38*53ee8cc1Swenshuai.xi __u32 buf[0]; 39*53ee8cc1Swenshuai.xi }; 40*53ee8cc1Swenshuai.xi 41*53ee8cc1Swenshuai.xi /* Exported functions */ 42*53ee8cc1Swenshuai.xi 43*53ee8cc1Swenshuai.xi 44*53ee8cc1Swenshuai.xi #endif /* _LINUX_RANDOM_H */ 45