From 567db2c17d4ea8a0164d7abd8aed65b7a634bb40 Mon Sep 17 00:00:00 2001 From: Richard Levitte Date: Fri, 12 Oct 2018 22:27:18 +0200 Subject: Add EVP_MAC API We currently implement EVP MAC methods as EVP_PKEY methods. This change creates a separate EVP API for MACs, to replace the current EVP_PKEY ones. A note about this EVP API and how it interfaces with underlying MAC implementations: Other EVP APIs pass the EVP API context down to implementations, and it can be observed that the implementations use the pointer to their own private data almost exclusively. The EVP_MAC API deviates from that pattern by passing the pointer to the implementation's private data directly, and thereby deny the implementations access to the EVP_MAC context structure. This change is made to provide a clearer separation between the EVP library itself and the implementations of its supported algorithm classes. Reviewed-by: Paul Dale (Merged from https://github.com/openssl/openssl/pull/7393) --- util/private.num | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'util/private.num') diff --git a/util/private.num b/util/private.num index 2bfe987b43..27d352acae 100644 --- a/util/private.num +++ b/util/private.num @@ -22,6 +22,8 @@ CRYPTO_EX_dup datatype CRYPTO_EX_free datatype CRYPTO_EX_new datatype DTLS_timer_cb datatype +EVP_MAC datatype +EVP_MAC_CTX datatype EVP_PKEY_gen_cb datatype EVP_PKEY_METHOD datatype EVP_PKEY_ASN1_METHOD datatype @@ -185,6 +187,7 @@ ERR_free_strings define deprecated 1.1.0 ERR_load_crypto_strings define deprecated 1.1.0 EVP_DigestSignUpdate define EVP_DigestVerifyUpdate define +EVP_MAC_name define EVP_MD_CTX_block_size define EVP_MD_CTX_size define EVP_MD_CTX_type define @@ -271,6 +274,8 @@ EVP_cast5_cfb define EVP_cleanup define deprecated 1.1.0 EVP_get_digestbynid define EVP_get_digestbyobj define +EVP_get_macbynid define +EVP_get_macbyobj define EVP_idea_cfb define EVP_rc2_cfb define EVP_rc5_32_12_16_cfb define -- cgit v1.2.3