Manual pages for EVP signing and verifying.
[openssl.git] / doc / crypto / RAND_add.pod
index 10be71a8948a064c17c894e58b355a976ea9da86..16a86989330c81a316bbdc2917aafb2b58399c3a 100644 (file)
@@ -2,7 +2,7 @@
 
 =head1 NAME
 
-RAND_add, RAND_seed, RAND_screen - Add entropy to the PRNG
+RAND_add, RAND_seed, RAND_status, RAND_screen - add entropy to the PRNG
 
 =head1 SYNOPSIS
 
@@ -10,7 +10,9 @@ RAND_add, RAND_seed, RAND_screen - Add entropy to the PRNG
 
  void RAND_seed(const void *buf, int num);
 
- void RAND_add(const void *buf, int num, int entropy);
+ void RAND_add(const void *buf, int num, double entropy);
+
+ int  RAND_status(void);
 
  void RAND_screen(void);
 
@@ -22,9 +24,9 @@ increases the uncertainty about the state and makes the PRNG output
 less predictable. Suitable input comes from user interaction (random
 key presses, mouse movements) and certain hardware events. The
 B<entropy> argument is (the lower bound of) an estimate of how much
-randomness is contained in B<buf>. Details about sources of randomness
-and how to estimate their entropy can be found in the literature,
-e.g. RFC 1750.
+randomness is contained in B<buf>, measured in bytes. Details about
+sources of randomness and how to estimate their entropy can be found
+in the literature, e.g. RFC 1750.
 
 RAND_add() may be called with sensitive data such as user entered
 passwords. The seed values cannot be recovered from the PRNG output.
@@ -32,7 +34,8 @@ passwords. The seed values cannot be recovered from the PRNG output.
 OpenSSL makes sure that the PRNG state is unique for each thread. On
 systems that provide C</dev/urandom>, the randomness device is used
 to seed the PRNG transparently. However, on all other systems, the
-application is responsible for seeding the PRNG by calling RAND_add()
+application is responsible for seeding the PRNG by calling RAND_add(),
+L<RAND_egd(3)|RAND_egd(3)>
 or L<RAND_load_file(3)|RAND_load_file(3)>.
 
 RAND_seed() is equivalent to RAND_add() when B<num == entropy>.
@@ -46,15 +49,20 @@ used on servers that run without user interaction.
 
 =head1 RETURN VALUES
 
-These functions do not return values.
+RAND_status() returns 1 if the PRNG has been seeded with enough data,
+0 otherwise.
+
+The other functions do not return values.
 
 =head1 SEE ALSO
 
-L<rand(3)|rand(3)>, L<RAND_load_file(3)|RAND_load_file(3)>, L<RAND_cleanup(3)|RAND_cleanup(3)>
+L<rand(3)|rand(3)>, L<RAND_egd(3)|RAND_egd(3)>,
+L<RAND_load_file(3)|RAND_load_file(3)>, L<RAND_cleanup(3)|RAND_cleanup(3)>
 
 =head1 HISTORY
 
 RAND_seed() and RAND_screen() are available in all versions of SSLeay
-and OpenSSL. RAND_add() was added in OpenSSL 0.9.5.
+and OpenSSL. RAND_add() and RAND_status() have been added in OpenSSL
+0.9.5.
 
 =cut