random.3.patch   [plain text]


--- random.3	2004-11-25 11:38:42.000000000 -0800
+++ random.3.edit	2006-07-12 11:25:20.000000000 -0700
@@ -36,32 +36,45 @@
 .Dt RANDOM 3
 .Os
 .Sh NAME
+.Nm initstate ,
 .Nm random ,
+.Nm setstate ,
 .Nm srandom ,
-.Nm srandomdev ,
-.Nm initstate ,
-.Nm setstate
+.Nm srandomdev
 .Nd better random number generator; routines for changing generators
 .Sh LIBRARY
 .Lb libc
 .Sh SYNOPSIS
 .In stdlib.h
+.Ft char *
+.Fo initstate
+.Fa "unsigned seed"
+.Fa "char *state"
+.Fa "size_t size"
+.Fc
 .Ft long
-.Fn random void
+.Fo random
+.Fa void
+.Fc
+.Ft char *
+.Fo setstate
+.Fa "const char *state"
+.Fc
 .Ft void
-.Fn srandom "unsigned long seed"
+.Fo srandom
+.Fa "unsigned seed"
+.Fc
 .Ft void
-.Fn srandomdev void
-.Ft char *
-.Fn initstate "unsigned long seed" "char *state" "long n"
-.Ft char *
-.Fn setstate "char *state"
+.Fo srandomdev
+.Fa void
+.Fc
 .Sh DESCRIPTION
 The
 .Fn random
 function
-uses a non-linear additive feedback random number generator employing a
-default table of size 31 long integers to return successive pseudo-random
+uses a non-linear, additive feedback, random number generator, employing a
+default table of size 31 long integers.
+It returns successive pseudo-random
 numbers in the range from 0 to
 .if t 2\u\s731\s10\d\(mi1.
 .if n (2**31)\(mi1.
@@ -82,7 +95,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 the bits generated by
+All of the bits generated by
 .Fn random
 are usable.
 For example,
@@ -102,7 +115,7 @@
 .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.
@@ -127,7 +140,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
@@ -166,7 +179,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 AUTHORS
 .An Earl T. Cohen
@@ -177,11 +190,36 @@
 .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 random 4 ,
+.Xr compat 5
 .Sh HISTORY
 These
 functions appeared in