openssl/crypto/evp
Richard Levitte c96399e296 Adapt EVP_CIPHER_{param_to_asn1,asn1_to_param} for use with provider.
So far, these two funtions have depended on legacy EVP_CIPHER
implementations to be able to do their work.  This change adapts them
to work with provided implementations as well, in one of two possible
ways:

1.  If the implementation's set_asn1_parameters or get_asn1_parameters
    function pointers are non-NULL, this is a legacy implementation,
    and that function is called.
2.  Otherwise, if the cipher doesn't have EVP_CIPH_FLAG_CUSTOM_ASN1
    set, the default AlgorithmIdentifier parameter code in libcrypto
    is executed.
3.  Otherwise, if the cipher is a provided implementation, the ASN1
    type structure is converted to a DER blob which is then passed to
    the implementation as a parameter (param_to_asn1) or the DER blob
    is retrieved from the implementation as a parameter and converted
    locally to a ASN1_TYPE (asn1_to_param).

With this, the old flag EVP_CIPH_FLAG_DEFAULT_ASN1 has become
irrelevant and is simply ignored.

Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/10008)
2019-10-01 22:51:00 +02:00
..
bio_b64.c Following the license change, modify the boilerplates in crypto/evp/ 2018-12-06 14:54:57 +01:00
bio_enc.c Following the license change, modify the boilerplates in crypto/evp/ 2018-12-06 14:54:57 +01:00
bio_md.c Reorganize local header files 2019-09-28 20:26:35 +02:00
bio_ok.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
build.info KDF/PRF updates to libcrypto 2019-09-06 19:27:57 +10:00
c_allc.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
c_alld.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
cmeth_lib.c Reorganize local header files 2019-09-28 20:26:35 +02:00
digest.c Reorganize local header files 2019-09-28 20:26:35 +02:00
e_aes_cbc_hmac_sha1.c Reorganize local header files 2019-09-28 20:26:35 +02:00
e_aes_cbc_hmac_sha256.c Reorganize local header files 2019-09-28 20:26:35 +02:00
e_aes.c Reorganize local header files 2019-09-28 20:26:35 +02:00
e_aria.c Reorganize local header files 2019-09-28 20:26:35 +02:00
e_bf.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
e_camellia.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
e_cast.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
e_chacha20_poly1305.c Reorganize local header files 2019-09-28 20:26:35 +02:00
e_des3.c Reorganize local header files 2019-09-28 20:26:35 +02:00
e_des.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
e_idea.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
e_null.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
e_old.c Following the license change, modify the boilerplates in crypto/evp/ 2018-12-06 14:54:57 +01:00
e_rc2.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
e_rc4_hmac_md5.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
e_rc4.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
e_rc5.c Reorganize local header files 2019-09-28 20:26:35 +02:00
e_seed.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
e_sm4.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
e_xcbc_d.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
encode.c Reorganize local header files 2019-09-28 20:26:35 +02:00
evp_cnf.c EVP configuration section: add 'default_properties' command 2019-04-05 15:43:37 +02:00
evp_enc.c Reorganize local header files 2019-09-28 20:26:35 +02:00
evp_err.c util/mkerr.pl: make it not depend on the function code 2019-09-12 17:59:52 +02:00
evp_fetch.c Reorganize public header files (part 1) 2019-09-28 20:26:36 +02:00
evp_key.c crypto/evp/evp_key.c: #define BUFSIZ if <stdio.h> doesn't #define it 2019-05-27 08:01:50 +10:00
evp_lib.c Adapt EVP_CIPHER_{param_to_asn1,asn1_to_param} for use with provider. 2019-10-01 22:51:00 +02:00
evp_local.h Reorganize public header files (part 1) 2019-09-28 20:26:36 +02:00
evp_pbe.c Reorganize local header files 2019-09-28 20:26:35 +02:00
evp_pkey.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
evp_utils.c Reorganize local header files 2019-09-28 20:26:35 +02:00
exchange.c Reorganize local header files 2019-09-28 20:26:35 +02:00
kdf_lib.c Reorganize local header files 2019-09-28 20:26:35 +02:00
kdf_meth.c Reorganize local header files 2019-09-28 20:26:35 +02:00
keymgmt_lib.c Reorganize local header files 2019-09-28 20:26:35 +02:00
keymgmt_meth.c Reorganize local header files 2019-09-28 20:26:35 +02:00
m_md2.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
m_md4.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
m_md5_sha1.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
m_md5.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
m_mdc2.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
m_null.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
m_ripemd.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
m_sha1.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
m_sha3.c Reorganize local header files 2019-09-28 20:26:35 +02:00
m_sigver.c Reorganize local header files 2019-09-28 20:26:35 +02:00
m_wp.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
mac_lib.c Reorganize public header files (part 1) 2019-09-28 20:26:36 +02:00
mac_meth.c Reorganize local header files 2019-09-28 20:26:35 +02:00
names.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
p5_crpt2.c Reorganize local header files 2019-09-28 20:26:35 +02:00
p5_crpt.c Coverity CID 1444960: Error handling issues 2019-05-08 09:52:58 +10:00
p_dec.c Following the license change, modify the boilerplates in crypto/evp/ 2018-12-06 14:54:57 +01:00
p_enc.c Following the license change, modify the boilerplates in crypto/evp/ 2018-12-06 14:54:57 +01:00
p_lib.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
p_open.c Fix the allocation size in EVP_OpenInit and PEM_SignFinal 2019-04-06 10:17:19 +02:00
p_seal.c Following the license change, modify the boilerplates in crypto/evp/ 2018-12-06 14:54:57 +01:00
p_sign.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
p_verify.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
pbe_scrypt.c Usages of KDFs converted to use the name macros 2019-09-11 10:22:49 +10:00
pkey_kdf.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
pkey_mac.c Reorganize local header files 2019-09-28 20:26:35 +02:00
pmeth_fn.c Reorganize local header files 2019-09-28 20:26:35 +02:00
pmeth_gn.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
pmeth_lib.c Reorganize local header files 2019-09-28 20:26:35 +02:00