OpenSuSE Man Pages

Man Page or Keyword Search:
Man Architecture
Apropos Keyword Search (all sections) Output format
home | help
x SuSE Linux 13.1-RELEASE x
x SuSE Linux 13.1-RELEASEx
arc4random(3)              Library Functions Manual              arc4random(3)

NAME
       arc4random,  arc4random_uniform, arc4random_buf - cryptographically-se-
       cure pseudorandom number generator

LIBRARY
       Standard C library (libc, -lc)

SYNOPSIS
       #include <stdlib.h>

       uint32_t arc4random(void);
       uint32_t arc4random_uniform(uint32_t upper_bound);
       void arc4random_buf(void buf[.n], size_t n);

DESCRIPTION
       These functions give cryptographically-secure pseudorandom numbers.

       arc4random() returns a uniformly-distributed value.

       arc4random_uniform() returns a uniformly-distributed  value  less  than
       upper_bound (see BUGS).

       arc4random_buf()  fills  the  memory pointed to by buf, with n bytes of
       pseudorandom data.

       The rand(3) and drand48(3) families of functions should  only  be  used
       where  the  quality  of  the  pseudorandom numbers is not a concern and
       there's a need for repeatability of the results.  Unless you meet  both
       of those conditions, use the arc4random() functions.

RETURN VALUE
       arc4random() returns a pseudorandom number.

       arc4random_uniform()  returns  a  pseudorandom  number  less  than  up-
       per_bound for valid input, or 0 when upper_bound is invalid.

ATTRIBUTES
       For an  explanation  of  the  terms  used  in  this  section,  see  at-
       tributes(7).

       +--------------------------------------------+---------------+---------+
       |Interface                                   | Attribute     | Value   |
       +--------------------------------------------+---------------+---------+
       |arc4random(), arc4random_uniform(),         | Thread safety | MT-Safe |
       |arc4random_buf()                            |               |         |
       +--------------------------------------------+---------------+---------+

STANDARDS
       BSD.

HISTORY
       OpenBSD 2.1, FreeBSD 3.0, NetBSD  1.6,  DragonFly  1.0,  libbsd,  glibc
       2.36.

BUGS
       An  upper_bound  of  0  doesn't make sense in a call to arc4random_uni-
       form().  Such a call will fail, and return 0.  Be careful,  since  that
       value  is  not less than upper_bound.  In some cases, such as accessing
       an array, using that value could result in Undefined Behavior.

SEE ALSO
       getrandom(3), rand(3), drand48(3), random(7)

Linux man-pages 6.04              2023-03-18                     arc4random(3)

Want to link to this manual page? Use this URL:
<
http://star2.abcm.com/cgi-bin/bsdi-man?query=arc4random&sektion=3bsd&manpath=>

home | help