NAME
arc4random
,
arc4random_buf
,
arc4random_uniform
,
enqueue_randomness
—
kernel random subsystem
SYNOPSIS
#include
<sys/systm.h>
u_int32_t
arc4random
(void);
void
arc4random_buf
(void
*buf, size_t
nbytes);
u_int32_t
arc4random_uniform
(u_int32_t
upper_bound);
void
enqueue_randomness
(int);
DESCRIPTION
arc4random
()
and
arc4random_buf
()
provide random numbers and are intended to be called in any circumstance
where random numbers are required.
arc4random_uniform
()
will return a uniformly distributed random number less than
upper_bound, avoiding "modulo bias" when the
upper bound is not a power of two. In the worst case, this function may
consume multiple iterations to ensure uniformity; see the source code to
understand the problem and solution.
enqueue_randomness
()
causes the supplied data argument to be added to the entropy pool.