SSL_library_init 3 2008-05-09 0.9.9-dev OpenSSL

NAME

SSL_library_init, OpenSSL_add_ssl_algorithms, SSLeay_add_ssl_algorithms - initialize SSL library by registering algorithms

LIBRARY

libcrypto, -lcrypto

SYNOPSIS


 #include 


 int SSL_library_init(void);
 #define OpenSSL_add_ssl_algorithms()    SSL_library_init()
 #define SSLeay_add_ssl_algorithms()     SSL_library_init()

DESCRIPTION

_S_S_L___l_i_b_r_a_r_y___i_n_i_t_(_) registers the available ciphers and digests.

_O_p_e_n_S_S_L___a_d_d___s_s_l___a_l_g_o_r_i_t_h_m_s_(_) and _S_S_L_e_a_y___a_d_d___s_s_l___a_l_g_o_r_i_t_h_m_s_(_) are synonyms for _S_S_L___l_i_b_r_a_r_y___i_n_i_t_(_).

NOTES

_S_S_L___l_i_b_r_a_r_y___i_n_i_t_(_) must be called before any other action takes place. _S_S_L___l_i_b_r_a_r_y___i_n_i_t_(_) is not reentrant.

WARNING

_S_S_L___l_i_b_r_a_r_y___i_n_i_t_(_) only registers ciphers. Another important initialization is the seeding of the PRNG (Pseudo Random Number Generator), which has to be performed separately.

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();

RETURN VALUES

_S_S_L___l_i_b_r_a_r_y___i_n_i_t_(_) always returns "1", so it is safe to discard the return value.

SEE ALSO

_s_s_l(3), _S_S_L___l_o_a_d___e_r_r_o_r___s_t_r_i_n_g_s(3), _R_A_N_D___a_d_d(3)