EVP: Add EVP_<TYPE>_description()
authorRichard Levitte <levitte@openssl.org>
Tue, 16 Mar 2021 13:23:54 +0000 (14:23 +0100)
committerRichard Levitte <levitte@openssl.org>
Fri, 2 Apr 2021 06:57:47 +0000 (08:57 +0200)
commit03888233290bf3b8410e8dc2acbef8950fffef60
treecffa3d7c31504acbc2b80d7fe7d826381acc76fe
parentb638dad970c65e311e9a724b89972441268adc9f
EVP: Add EVP_<TYPE>_description()

The following operation types are covered:

EVP_MD, EVP_CIPHER, EVP_MAC, EVP_RAND, EVP_KEYMGMT, EVP_SIGNATURE,
EVP_ASYM_CIPHER, EVP_KEM, EVP_KEYEXCH, EVP_KDF.  Also EVP_PKEY.

For EVP_MD and EVP_CIPHER, OBJ_nid2ln() is used as a fallback for
legacy implementations.

For EVP_PKEY, the info field of the EVP_PKEY_ASN1_METHOD is used as a
fallback for legacy implementations.

Fixes #14514

Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/14656)
24 files changed:
crypto/evp/asymcipher.c
crypto/evp/evp_lib.c
crypto/evp/evp_rand.c
crypto/evp/exchange.c
crypto/evp/kdf_lib.c
crypto/evp/kem.c
crypto/evp/keymgmt_meth.c
crypto/evp/mac_lib.c
crypto/evp/p_lib.c
crypto/evp/signature.c
doc/man3/EVP_ASYM_CIPHER_free.pod
doc/man3/EVP_DigestInit.pod
doc/man3/EVP_EncryptInit.pod
doc/man3/EVP_KDF.pod
doc/man3/EVP_KEM_free.pod
doc/man3/EVP_KEYEXCH_free.pod
doc/man3/EVP_KEYMGMT.pod
doc/man3/EVP_MAC.pod
doc/man3/EVP_PKEY_new.pod
doc/man3/EVP_RAND.pod
doc/man3/EVP_SIGNATURE_free.pod
include/openssl/evp.h
include/openssl/kdf.h
util/libcrypto.num