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 <stefanb@linux.ibm.com>
This commit is contained in:
Stefan Berger 2023-02-11 13:10:09 -05:00 committed by Stefan Berger
parent f531ad6927
commit 06ada5ad3e

View File

@ -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);
}