From b0004708730f300a2e5c6a11c887caab50b6c42a Mon Sep 17 00:00:00 2001 From: Paul Yang Date: Wed, 1 Nov 2017 00:45:24 +0800 Subject: Support public key and param check in EVP interface EVP_PKEY_public_check() and EVP_PKEY_param_check() Doc and test cases are added Reviewed-by: Tim Hudson Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/4647) --- crypto/include/internal/asn1_int.h | 2 ++ crypto/include/internal/evp_int.h | 2 ++ 2 files changed, 4 insertions(+) (limited to 'crypto/include') diff --git a/crypto/include/internal/asn1_int.h b/crypto/include/internal/asn1_int.h index d8b6f45bd8..90d525aa8d 100644 --- a/crypto/include/internal/asn1_int.h +++ b/crypto/include/internal/asn1_int.h @@ -56,6 +56,8 @@ struct evp_pkey_asn1_method_st { const ASN1_STRING *sig); /* Check */ int (*pkey_check) (const EVP_PKEY *pk); + int (*pkey_public_check) (const EVP_PKEY *pk); + int (*pkey_param_check) (const EVP_PKEY *pk); } /* EVP_PKEY_ASN1_METHOD */ ; DEFINE_STACK_OF_CONST(EVP_PKEY_ASN1_METHOD) diff --git a/crypto/include/internal/evp_int.h b/crypto/include/internal/evp_int.h index 562ac42ab5..917245c7d4 100644 --- a/crypto/include/internal/evp_int.h +++ b/crypto/include/internal/evp_int.h @@ -76,6 +76,8 @@ struct evp_pkey_method_st { size_t siglen, const unsigned char *tbs, size_t tbslen); int (*check) (EVP_PKEY *pkey); + int (*public_check) (EVP_PKEY *pkey); + int (*param_check) (EVP_PKEY *pkey); } /* EVP_PKEY_METHOD */ ; DEFINE_STACK_OF_CONST(EVP_PKEY_METHOD) -- cgit v1.2.3