X-Git-Url: https://git.openssl.org/gitweb/?p=openssl.git;a=blobdiff_plain;f=crypto%2Fevp%2Fp_lib.c;h=802f6ddf099b0727a62e03c547a31b9c31c43049;hp=0b50d3210e551dc7d35f4b4f9f0b4249547a1657;hb=ebad0b0beb1bb6913524549514111cbb91e6d494;hpb=f219a1b0485309b6814f00985f7bbb45e72ee374 diff --git a/crypto/evp/p_lib.c b/crypto/evp/p_lib.c index 0b50d3210e..802f6ddf09 100644 --- a/crypto/evp/p_lib.c +++ b/crypto/evp/p_lib.c @@ -237,6 +237,18 @@ void *EVP_PKEY_get0(const EVP_PKEY *pkey) return pkey->pkey.ptr; } +const unsigned char *EVP_PKEY_get0_hmac(const EVP_PKEY *pkey, size_t *len) +{ + ASN1_OCTET_STRING *os = NULL; + if (pkey->type != EVP_PKEY_HMAC) { + EVPerr(EVP_F_EVP_PKEY_GET0_HMAC, EVP_R_EXPECTING_AN_HMAC_KEY); + return NULL; + } + os = EVP_PKEY_get0(pkey); + *len = os->length; + return os->data; +} + #ifndef OPENSSL_NO_RSA int EVP_PKEY_set1_RSA(EVP_PKEY *pkey, RSA *key) {