diff options
author | 2016-11-03 12:21:50 +0000 | |
---|---|---|
committer | 2016-11-03 12:21:50 +0000 | |
commit | d18d18159f8ec018fc55b5ad8038427970fcea13 (patch) | |
tree | 57cf495e75e0d267f2f9d12d704b3a2d8a6bd8a5 /lib/libcrypto/man/OpenSSL_add_all_algorithms.3 | |
parent | convert remaining ASN1 object manuals from pod to mdoc (diff) | |
download | wireguard-openbsd-d18d18159f8ec018fc55b5ad8038427970fcea13.tar.xz wireguard-openbsd-d18d18159f8ec018fc55b5ad8038427970fcea13.zip |
convert configuration manuals from pod to mdoc
Diffstat (limited to 'lib/libcrypto/man/OpenSSL_add_all_algorithms.3')
-rw-r--r-- | lib/libcrypto/man/OpenSSL_add_all_algorithms.3 | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/lib/libcrypto/man/OpenSSL_add_all_algorithms.3 b/lib/libcrypto/man/OpenSSL_add_all_algorithms.3 new file mode 100644 index 00000000000..b6e93a939e6 --- /dev/null +++ b/lib/libcrypto/man/OpenSSL_add_all_algorithms.3 @@ -0,0 +1,71 @@ +.Dd $Mdocdate: November 3 2016 $ +.Dt OPENSSL_ADD_ALL_ALGORITHMS 3 +.Os +.Sh NAME +.Nm OpenSSL_add_all_algorithms , +.Nm OpenSSL_add_all_ciphers , +.Nm OpenSSL_add_all_digests , +.Nm EVP_cleanup +.Nd add algorithms to internal table +.Sh SYNOPSIS +.In openssl/evp.h +.Ft void +.Fn OpenSSL_add_all_algorithms void +.Ft void +.Fn OpenSSL_add_all_ciphers void +.Ft void +.Fn OpenSSL_add_all_digests void +.Ft void +.Fn EVP_cleanup void +.Sh DESCRIPTION +OpenSSL keeps an internal table of digest algorithms and ciphers. +It uses this table to lookup ciphers via functions such as +.Xr EVP_get_cipherbyname 3 . +.Pp +.Fn OpenSSL_add_all_algorithms +adds all algorithms to the table (digests and ciphers). +.Pp +.Fn OpenSSL_add_all_digests +adds all digest algorithms to the table. +.Pp +.Fn OpenSSL_add_all_ciphers +adds all encryption algorithms to the table including password based +encryption algorithms. +.Pp +.Fn EVP_cleanup +removes all ciphers and digests from the table. +.Pp +A typical application will call +.Fn OpenSSL_add_all_algorithms +initially and +.Fn EVP_cleanup +before exiting. +.Pp +An application does not need to add algorithms to use them explicitly, +for example by +.Xr EVP_sha1 3 . +It just needs to add them if it (or any of the functions it calls) needs +to lookup algorithms. +.Pp +The cipher and digest lookup functions are used in many parts of the +library. +If the table is not initialized, several functions will misbehave and +complain they cannot find algorithms. +This includes the PEM, PKCS#12, SSL and S/MIME libraries. +This is a common query in the OpenSSL mailing lists. +.Pp +Calling +.Fn OpenSSL_add_all_algorithms +links in all algorithms: as a result a statically linked executable can +be quite large. +If this is important, it is possible to just add the required ciphers and +digests. +.Sh SEE ALSO +.Xr evp 3 , +.Xr EVP_DigestInit 3 , +.Xr EVP_EncryptInit 3 +.Sh BUGS +Although the functions do not return error codes, it is possible for them +to fail. +This will only happen as a result of a memory allocation failure so this +is not too much of a problem in practice. |