From 7f3caba522f4d24764f29d83aa2de9198bb7f01c Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Fri, 24 May 2024 06:52:22 +0200 Subject: Adding upstream version 6.8. Signed-off-by: Daniel Baumann --- man3/random_r.3 | 176 -------------------------------------------------------- 1 file changed, 176 deletions(-) delete mode 100644 man3/random_r.3 (limited to 'man3/random_r.3') diff --git a/man3/random_r.3 b/man3/random_r.3 deleted file mode 100644 index f1647f8..0000000 --- a/man3/random_r.3 +++ /dev/null @@ -1,176 +0,0 @@ -'\" t -.\" Copyright 2008 Michael Kerrisk -.\" -.\" SPDX-License-Identifier: Linux-man-pages-copyleft -.\" -.\" -.TH random_r 3 2023-10-31 "Linux man-pages 6.7" -.SH NAME -random_r, srandom_r, initstate_r, setstate_r \- reentrant -random number generator -.SH LIBRARY -Standard C library -.RI ( libc ", " \-lc ) -.SH SYNOPSIS -.nf -.B #include -.P -.BI "int random_r(struct random_data *restrict " buf , -.BI " int32_t *restrict " result ); -.BI "int srandom_r(unsigned int " seed ", struct random_data *" buf ); -.P -.BI "int initstate_r(unsigned int " seed ", \ -char " statebuf "[restrict ." statelen ], -.BI " size_t " statelen ", struct random_data *restrict " buf ); -.BI "int setstate_r(char *restrict " statebuf , -.BI " struct random_data *restrict " buf ); -.fi -.P -.RS -4 -Feature Test Macro Requirements for glibc (see -.BR feature_test_macros (7)): -.RE -.P -.BR random_r (), -.BR srandom_r (), -.BR initstate_r (), -.BR setstate_r (): -.nf - /* glibc >= 2.19: */ _DEFAULT_SOURCE - || /* glibc <= 2.19: */ _SVID_SOURCE || _BSD_SOURCE -.fi -.SH DESCRIPTION -These functions are the reentrant equivalents -of the functions described in -.BR random (3). -They are suitable for use in multithreaded programs where each thread -needs to obtain an independent, reproducible sequence of random numbers. -.P -The -.BR random_r () -function is like -.BR random (3), -except that instead of using state information maintained -in a global variable, -it uses the state information in the argument pointed to by -.IR buf , -which must have been previously initialized by -.BR initstate_r (). -The generated random number is returned in the argument -.IR result . -.P -The -.BR srandom_r () -function is like -.BR srandom (3), -except that it initializes the seed for the random number generator -whose state is maintained in the object pointed to by -.IR buf , -which must have been previously initialized by -.BR initstate_r (), -instead of the seed associated with the global state variable. -.P -The -.BR initstate_r () -function is like -.BR initstate (3) -except that it initializes the state in the object pointed to by -.IR buf , -rather than initializing the global state variable. -Before calling this function, the -.I buf.state -field must be initialized to NULL. -The -.BR initstate_r () -function records a pointer to the -.I statebuf -argument inside the structure pointed to by -.IR buf . -Thus, -.I statebuf -should not be deallocated so long as -.I buf -is still in use. -(So, -.I statebuf -should typically be allocated as a static variable, -or allocated on the heap using -.BR malloc (3) -or similar.) -.P -The -.BR setstate_r () -function is like -.BR setstate (3) -except that it modifies the state in the object pointed to by -.IR buf , -rather than modifying the global state variable. -\fIstate\fP must first have been initialized -using -.BR initstate_r () -or be the result of a previous call of -.BR setstate_r (). -.SH RETURN VALUE -All of these functions return 0 on success. -On error, \-1 is returned, with -.I errno -set to indicate the error. -.SH ERRORS -.TP -.B EINVAL -A state array of less than 8 bytes was specified to -.BR initstate_r (). -.TP -.B EINVAL -The -.I statebuf -or -.I buf -argument to -.BR setstate_r () -was NULL. -.TP -.B EINVAL -The -.I buf -or -.I result -argument to -.BR random_r () -was NULL. -.SH ATTRIBUTES -For an explanation of the terms used in this section, see -.BR attributes (7). -.TS -allbox; -lbx lb lb -l l l. -Interface Attribute Value -T{ -.na -.nh -.BR random_r (), -.BR srandom_r (), -.BR initstate_r (), -.BR setstate_r () -T} Thread safety MT-Safe race:buf -.TE -.SH STANDARDS -GNU. -.\" These functions appear to be on Tru64, but don't seem to be on -.\" Solaris, HP-UX, or FreeBSD. -.SH BUGS -The -.BR initstate_r () -interface is confusing. -.\" FIXME . https://sourceware.org/bugzilla/show_bug.cgi?id=3662 -It appears that the -.I random_data -type is intended to be opaque, -but the implementation requires the user to either initialize the -.I buf.state -field to NULL or zero out the entire structure before the call. -.SH SEE ALSO -.BR drand48 (3), -.BR rand (3), -.BR random (3) -- cgit v1.2.3