initialise the crypto
options, const void *dummy);
These functions are deprecated. It is never useful for an application program to call either of them explicitly.
The library automatically calls
internally with an options argument of 0 whenever
needed. It is safest to assume that any function may do so.
To enable or disable the standard configuration file, instead use OPENSSL_config(3) or OPENSSL_no_config(3), respectively. To load a non-standard configuration file, refer to CONF_modules_load_file(3).
is called before any other crypto or ssl functions, the crypto library is
initialised by allocating various internal resources, in particular calling
The following options are supported:
- At the end of the initialization, call
OPENSSL_config(3) with a
NULLargument, loading the default configuration file.
- Ignore any later calls to OPENSSL_config(3).
The other options flags defined by OpenSSL are all ignored by LibreSSL. The dummy argument has no effect.
If this function is called more than once, none of the calls except the first one have any effect.
has no effect at all.
OPENSSL_init_crypto() is intended to
return 1 on success or 0 on error.
CONF_modules_load_file(3), OPENSSL_config(3), OPENSSL_load_builtin_modules(3), openssl.cnf(5)
OPENSSL_init() first appeared in OpenSSL
1.0.0e and has been available since OpenBSD 5.3. It
stopped having any effect in OpenSSL 1.1.1 and in OpenBSD
OPENSSL_init_crypto() first appeared in
OpenSSL 1.1.0 and has been available since OpenBSD
OPENSSL_init_crypto() silently ignores
almost all kinds of errors. In particular, if memory allocation fails,
initialisation is likely to remain incomplete, the library may be in an
inconsistent internal state, but the return value will usually indicate
success anyway. There is no way for the application program to find out
whether library initialisation is actually complete, nor to get back to a
consistent state if it isn't.