summaryrefslogtreecommitdiffstats
path: root/doc/crypto/RAND_set_rand_method.pod
diff options
context:
space:
mode:
authorUlf Möller <ulf@openssl.org>2000-01-21 17:50:27 +0000
committerUlf Möller <ulf@openssl.org>2000-01-21 17:50:27 +0000
commit60b5245360a70f4b10a6c77aa0bf5ee04b2e7262 (patch)
tree2de908febe44ee615faf54ddd405e163d72c3f63 /doc/crypto/RAND_set_rand_method.pod
parent5d82c5b3f425b13d9e75db8b21db92a8cf22159b (diff)
Document RAND library.
Diffstat (limited to 'doc/crypto/RAND_set_rand_method.pod')
-rw-r--r--doc/crypto/RAND_set_rand_method.pod57
1 files changed, 57 insertions, 0 deletions
diff --git a/doc/crypto/RAND_set_rand_method.pod b/doc/crypto/RAND_set_rand_method.pod
new file mode 100644
index 0000000000..4f85de6269
--- /dev/null
+++ b/doc/crypto/RAND_set_rand_method.pod
@@ -0,0 +1,57 @@
+=pod
+
+=head1 NAME
+
+RAND_set_rand_method, RAND_get_rand_method, RAND_SSLeay - Select RAND method
+
+=head1 SYNOPSIS
+
+ #include <openssl/rand.h>
+
+ void RAND_set_rand_method(RAND_METHOD *meth);
+
+ RAND_METHOD *RAND_get_rand_method(void);
+
+ RAND_METHOD *RAND_SSLeay(void);
+
+=head1 DESCRIPTION
+
+A B<RAND_METHOD> specifies the functions that OpenSSL uses for random
+number generation. By modifying the method, alternative
+implementations such as hardware RNGs may be used. Initially, the
+default is to use the OpenSSL internal implementation. RAND_SSLeay()
+returns a pointer to that method.
+
+RAND_set_rand_method() sets the RAND method to B<meth>.
+RAND_get_rand_method() returns a pointer to the current method.
+
+=head1 THE RAND_METHOD STUCTURE
+
+ typedef struct rand_meth_st
+ {
+ void (*seed)(const void *buf, int num);
+ int (*bytes)(unsigned char *buf, int num);
+ void (*cleanup)(void);
+ void (*add)(const void *buf, int num, int entropy);
+ int (*pseudorand)(unsigned char *buf, int num);
+ } RAND_METHOD;
+
+The components point to the implementation of RAND_seed(),
+RAND_bytes(), RAND_cleanup(), RAND_add() and RAND_pseudo_rand().
+Each component may be NULL if the function is not implemented.
+
+=head1 RETURN VALUES
+
+RAND_set_rand_method() returns no value. RAND_get_rand_method() and
+RAND_SSLeay() return pointers to the respective methods.
+
+=head1 SEE ALSO
+
+rand(3)
+
+=head1 HISTORY
+
+RAND_set_rand_method(), RAND_get_rand_method() and RAND_SSLeay() are
+available in all versions of OpenSSL.
+
+=cut