From 4004963c6ac12da90deda1465f8f2b751f7ef2ae Mon Sep 17 00:00:00 2001 From: Tesfa Mael Date: Mon, 30 Dec 2019 09:31:23 -0800 Subject: [PATCH] test pkey references count --- tests/api.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/tests/api.c b/tests/api.c index 6d23cac3e..cae2578c4 100644 --- a/tests/api.c +++ b/tests/api.c @@ -26226,9 +26226,16 @@ static void test_wolfSSL_EVP_PKEY_encrypt(void) AssertIntEQ(EVP_PKEY_CTX_set_rsa_padding(ctx, RSA_PKCS1_PADDING), WOLFSSL_SUCCESS); + /* Test pkey references count is decremented. pkey shouldn't be destroyed + since ctx uses it.*/ + AssertIntEQ(pkey->references, 2); + EVP_PKEY_free(pkey); + AssertIntEQ(pkey->references, 1); + /* Encrypt data */ AssertIntEQ(EVP_PKEY_encrypt(ctx, outEnc, &outEncLen, (const unsigned char*)in, inlen), WOLFSSL_SUCCESS); + /* Decrypt data */ AssertIntEQ(EVP_PKEY_decrypt_init(ctx), WOLFSSL_SUCCESS); @@ -26255,8 +26262,6 @@ static void test_wolfSSL_EVP_PKEY_encrypt(void) WOLFSSL_SUCCESS); AssertIntEQ(XMEMCMP(inTmp, outDecTmp, outDecLen), 0); #endif - - EVP_PKEY_free(pkey); EVP_PKEY_CTX_free(ctx); XFREE(outEnc, HEAP_HINT, DYNAMIC_TYPE_TMP_BUFFER); XFREE(outDec, HEAP_HINT, DYNAMIC_TYPE_TMP_BUFFER);