blob: e7fbefbfacb71e1b100f95edf5115ffd55a06a54 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
=pod
=head1 NAME
SSL_library_init, OpenSSL_add_ssl_algorithms, SSLeay_add_ssl_algorithms
- initialize SSL library by registering algorithms
=head1 SYNOPSIS
#include <openssl/ssl.h>
int SSL_library_init(void);
#define OpenSSL_add_ssl_algorithms() SSL_library_init()
#define SSLeay_add_ssl_algorithms() SSL_library_init()
=head1 DESCRIPTION
SSL_library_init() registers the available SSL/TLS ciphers and digests.
OpenSSL_add_ssl_algorithms() and SSLeay_add_ssl_algorithms() are synonyms
for SSL_library_init().
=head1 NOTES
SSL_library_init() must be called before any other action takes place.
SSL_library_init() is not reentrant.
=head1 WARNING
SSL_library_init() mainly adds ciphers and digests used directly by SSL/TLS.
In some cases this is not sufficient and errors about unknown algorithms
will occur: for example when an attempt is made to use a certificate using
SHA256. This can be resolved by also calling OpenSSL_add_all_algorithms().
=head1 EXAMPLES
A typical TLS/SSL application will start with the library initialization,
will provide readable error messages and will seed the PRNG.
SSL_load_error_strings(); /* readable error messages */
SSL_library_init(); /* initialize library */
actions_to_seed_PRNG();
=head1 RETURN VALUES
SSL_library_init() always returns "1", so it is safe to discard the return
value.
=head1 SEE ALSO
L<ssl(3)|ssl(3)>, L<SSL_load_error_strings(3)|SSL_load_error_strings(3)>,
L<RAND_add(3)|RAND_add(3)>
=cut
|