Loading...
--- Libc/Libc-1725.40.4/stdlib/FreeBSD/random.3
+++ Libc/Libc-763.11/stdlib/FreeBSD/random.3
@@ -32,45 +32,32 @@
.Dt RANDOM 3
.Os
.Sh NAME
+.Nm random ,
+.Nm srandom ,
+.Nm srandomdev ,
.Nm initstate ,
-.Nm random ,
-.Nm setstate ,
-.Nm srandom ,
-.Nm srandomdev
+.Nm setstate
.Nd better random number generator; routines for changing generators
.Sh LIBRARY
.Lb libc
.Sh SYNOPSIS
.In stdlib.h
+.Ft long
+.Fn random void
+.Ft void
+.Fn srandom "unsigned long seed"
+.Ft void
+.Fn srandomdev void
.Ft char *
-.Fo initstate
-.Fa "unsigned seed"
-.Fa "char *state"
-.Fa "size_t size"
-.Fc
-.Ft long
-.Fo random
-.Fa void
-.Fc
+.Fn initstate "unsigned long seed" "char *state" "long n"
.Ft char *
-.Fo setstate
-.Fa "const char *state"
-.Fc
-.Ft void
-.Fo srandom
-.Fa "unsigned seed"
-.Fc
-.Ft void
-.Fo srandomdev
-.Fa void
-.Fc
+.Fn setstate "char *state"
.Sh DESCRIPTION
The
.Fn random
function
-uses a non-linear, additive feedback, random number generator, employing a
-default table of size 31 long integers.
-It returns successive pseudo-random
+uses a non-linear additive feedback random number generator employing a
+default table of size 31 long integers to return successive pseudo-random
numbers in the range from 0 to
.if t 2\u\s731\s10\d\(mi1.
.if n (2**31)\(mi1.
@@ -91,7 +78,7 @@
.Xr rand 3
produces a much less random sequence \(em in fact, the low dozen bits
generated by rand go through a cyclic pattern.
-All of the bits generated by
+All the bits generated by
.Fn random
are usable.
For example,
@@ -100,21 +87,18 @@
value.
.Pp
Like
-.Xr srand 3 ,
-.Fn srandom
-sets the initial seed value for future calls to
-.Fn random .
-Like
.Xr rand 3 ,
.Fn random
will by default produce a sequence of numbers that can be duplicated
by calling
.Fn srandom
-with the same seed.
+with
+.Ql 1
+as the seed.
.Pp
The
.Fn srandomdev
-routine initializes a state array, using the
+routine initializes a state array using the
.Xr random 4
random number device which returns good random numbers,
suitable for cryptographic use.
@@ -139,7 +123,7 @@
the nearest known amount.
Using less than 8 bytes will cause an error.)
The seed for the initialization (which specifies a starting point for
-the random number sequence and provides for restarting at the same
+the random number sequence, and provides for restarting at the same
point) is also an argument.
The
.Fn initstate
@@ -178,7 +162,7 @@
With 256 bytes of state information, the period of the random number
generator is greater than
.if t 2\u\s769\s10\d,
-.if n 2**69 ,
+.if n 2**69
which should be sufficient for most purposes.
.Sh DIAGNOSTICS
If
@@ -187,36 +171,11 @@
.Fn setstate
detects that the state information has been garbled, error
messages are printed on the standard error output.
-.Sh LEGACY SYNOPSIS
-.Fd #include <stdlib.h>
-.Pp
-.Ft char *
-.br
-.Fo initstate
-.Fa "unsigned long seed"
-.Fa "char *state"
-.Fa "long size"
-.Fc ;
-.Pp
-.Ft char *
-.br
-.Fo setstate
-.Fa "char *state"
-.Fc ;
-.Pp
-.Ft void
-.br
-.Fo srandom
-.Fa "unsigned long seed"
-.Fc ;
-.Pp
-The type of each parameter is different in the legacy version.
.Sh SEE ALSO
.Xr arc4random 3 ,
.Xr rand 3 ,
.Xr srand 3 ,
-.Xr random 4 ,
-.Xr compat 5
+.Xr random 4
.Sh HISTORY
These
functions appeared in