summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDag-Erling Smørgrav <des@FreeBSD.org>2013-02-28 21:32:47 +0000
committerDag-Erling Smørgrav <des@FreeBSD.org>2013-02-28 21:32:47 +0000
commit4aa9bd169f81ed11cb4fa8e44e4f38f6bc4f3b64 (patch)
tree7d07b7bf7b15d57bb63dcc043b7307f32e417084
parentc1ef59180fb4f060e27e582595b390f6f3282de9 (diff)
Notes
-rw-r--r--lib/libc/gen/rand48.314
-rw-r--r--lib/libc/stdlib/rand.315
-rw-r--r--lib/libc/stdlib/random.320
3 files changed, 29 insertions, 20 deletions
diff --git a/lib/libc/gen/rand48.3 b/lib/libc/gen/rand48.3
index 8d325a1bff1a..c70a8320c15b 100644
--- a/lib/libc/gen/rand48.3
+++ b/lib/libc/gen/rand48.3
@@ -12,7 +12,7 @@
.\" @(#)rand48.3 V1.0 MB 8 Oct 1993
.\" $FreeBSD$
.\"
-.Dd February 2, 2010
+.Dd September 4, 2012
.Dt RAND48 3
.Os
.Sh NAME
@@ -49,6 +49,14 @@
.Ft void
.Fn lcong48 "unsigned short p[7]"
.Sh DESCRIPTION
+.Bf -symbolic
+The functions described in this manual page are not cryptographically
+secure.
+Cryptographic applications should use
+.Xr arc4random 3
+instead.
+.Ef
+.Pp
The
.Fn rand48
family of functions generates pseudo-random numbers using a linear
@@ -174,10 +182,8 @@ It is thus not possible to use values greater than 0xffff as the addend.
Note that all three methods of seeding the random number generator
always also set the multiplicand and addend for any of the six
generator calls.
-.Pp
-For a more powerful random number generator, see
-.Xr random 3 .
.Sh SEE ALSO
+.Xr arc4random 3 ,
.Xr rand 3 ,
.Xr random 3
.Sh AUTHORS
diff --git a/lib/libc/stdlib/rand.3 b/lib/libc/stdlib/rand.3
index 3eb1a1d14481..390a40bfeced 100644
--- a/lib/libc/stdlib/rand.3
+++ b/lib/libc/stdlib/rand.3
@@ -32,7 +32,7 @@
.\" @(#)rand.3 8.1 (Berkeley) 6/4/93
.\" $FreeBSD$
.\"
-.Dd October 6, 2010
+.Dd September 4, 2012
.Dt RAND 3
.Os
.Sh NAME
@@ -55,9 +55,15 @@
.Fn rand_r "unsigned *ctx"
.Sh DESCRIPTION
.Bf -symbolic
+The functions described in this manual page are not cryptographically
+secure.
+Cryptographic applications should use
+.Xr arc4random 3
+instead.
+.Ef
+.Pp
These interfaces are obsoleted by
.Xr random 3 .
-.Ef
.Pp
The
.Fn rand
@@ -88,9 +94,6 @@ The
function initializes a seed using the
.Xr random 4
random number device which returns good random numbers.
-However, the
-.Fn rand
-function still remains unsuitable for cryptographic use.
.Pp
The
.Fn rand_r
@@ -105,8 +108,6 @@ For better generator quality, use
.Xr random 3
or
.Xr lrand48 3 .
-Applications requiring cryptographic quality randomness should use
-.Xr arc4random 3 .
.Sh SEE ALSO
.Xr arc4random 3 ,
.Xr lrand48 3 ,
diff --git a/lib/libc/stdlib/random.3 b/lib/libc/stdlib/random.3
index c6502bf554ea..4817440ec0b2 100644
--- a/lib/libc/stdlib/random.3
+++ b/lib/libc/stdlib/random.3
@@ -28,7 +28,7 @@
.\" @(#)random.3 8.1 (Berkeley) 6/4/93
.\" $FreeBSD$
.\"
-.Dd June 4, 1993
+.Dd September 4, 2012
.Dt RANDOM 3
.Os
.Sh NAME
@@ -53,6 +53,14 @@
.Ft char *
.Fn setstate "char *state"
.Sh DESCRIPTION
+.Bf -symbolic
+The functions described in this manual page are not cryptographically
+secure.
+Cryptographic applications should use
+.Xr arc4random 3
+instead.
+.Ef
+.Pp
The
.Fn random
function
@@ -98,10 +106,8 @@ as the seed.
.Pp
The
.Fn srandomdev
-routine initializes a state array using the
-.Xr random 4
-random number device which returns good random numbers,
-suitable for cryptographic use.
+routine initializes a state array using data from
+.Xr random 4 .
Note that this particular seeding
procedure can generate states which are impossible to reproduce by
calling
@@ -175,7 +181,6 @@ messages are printed on the standard error output.
.Xr arc4random 3 ,
.Xr lrand48 3 ,
.Xr rand 3 ,
-.Xr srand 3 ,
.Xr random 4
.Sh HISTORY
These
@@ -191,6 +196,3 @@ The historical implementation used to have a very weak seeding; the
random sequence did not vary much with the seed.
The current implementation employs a better pseudo-random number
generator for the initial state calculation.
-.Pp
-Applications requiring cryptographic quality randomness should use
-.Xr arc4random 3 .