From 06ada5ad3e731acd01edbf6d1feb378de2df9757 Mon Sep 17 00:00:00 2001 From: Stefan Berger Date: Sat, 11 Feb 2023 13:10:09 -0500 Subject: [PATCH] tpm2: Skip call to DoEVPGetIV() if ivLen = 0 The ivLen may be 0 for ECB and in this case we can skip the call to DoEVPGetIV(). Signed-off-by: Stefan Berger --- src/tpm2/crypto/openssl/CryptSym.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/tpm2/crypto/openssl/CryptSym.c b/src/tpm2/crypto/openssl/CryptSym.c index 5a44b3ba..2c97c1ab 100644 --- a/src/tpm2/crypto/openssl/CryptSym.c +++ b/src/tpm2/crypto/openssl/CryptSym.c @@ -621,7 +621,7 @@ CryptSymmetricEncrypt( ERROR_RETURN(TPM_RC_FAILURE); ivInOut->t.size = ivLen; - if (DoEVPGetIV(ctx, ivInOut->t.buffer, ivInOut->t.size)) + if (ivLen > 0 && DoEVPGetIV(ctx, ivInOut->t.buffer, ivInOut->t.size)) ERROR_RETURN(TPM_RC_FAILURE); } Exit: @@ -744,7 +744,7 @@ CryptSymmetricDecrypt( ERROR_RETURN(TPM_RC_FAILURE); ivInOut->t.size = ivLen; - if (DoEVPGetIV(ctx, ivInOut->t.buffer, ivInOut->t.size)) + if (ivLen > 0 && DoEVPGetIV(ctx, ivInOut->t.buffer, ivInOut->t.size)) ERROR_RETURN(TPM_RC_FAILURE); }