summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortb <>2024-01-28 20:57:15 +0000
committertb <>2024-01-28 20:57:15 +0000
commit32ab4d27846eea38e9383e440c8c9410f3760c89 (patch)
tree0d7463b9617b34f2e49e4632dc1c024cbe604a84
parente59eb4854a923be727ef10204da289d790fca442 (diff)
downloadopenbsd-32ab4d27846eea38e9383e440c8c9410f3760c89.tar.gz
openbsd-32ab4d27846eea38e9383e440c8c9410f3760c89.tar.bz2
openbsd-32ab4d27846eea38e9383e440c8c9410f3760c89.zip
Avoid calling EVP_CIPHER_CTX_reset() on a NULL ctx
-rw-r--r--src/lib/libcrypto/cmac/cmac.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/lib/libcrypto/cmac/cmac.c b/src/lib/libcrypto/cmac/cmac.c
index 29f5048897..42f630c149 100644
--- a/src/lib/libcrypto/cmac/cmac.c
+++ b/src/lib/libcrypto/cmac/cmac.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: cmac.c,v 1.19 2024/01/28 14:55:40 joshua Exp $ */ 1/* $OpenBSD: cmac.c,v 1.20 2024/01/28 20:57:15 tb Exp $ */
2/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL 2/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
3 * project. 3 * project.
4 */ 4 */
@@ -131,7 +131,8 @@ LCRYPTO_ALIAS(CMAC_CTX_new);
131void 131void
132CMAC_CTX_cleanup(CMAC_CTX *ctx) 132CMAC_CTX_cleanup(CMAC_CTX *ctx)
133{ 133{
134 EVP_CIPHER_CTX_reset(ctx->cipher_ctx); 134 if (ctx->cipher_ctx != NULL)
135 EVP_CIPHER_CTX_reset(ctx->cipher_ctx);
135 explicit_bzero(ctx->tbl, EVP_MAX_BLOCK_LENGTH); 136 explicit_bzero(ctx->tbl, EVP_MAX_BLOCK_LENGTH);
136 explicit_bzero(ctx->k1, EVP_MAX_BLOCK_LENGTH); 137 explicit_bzero(ctx->k1, EVP_MAX_BLOCK_LENGTH);
137 explicit_bzero(ctx->k2, EVP_MAX_BLOCK_LENGTH); 138 explicit_bzero(ctx->k2, EVP_MAX_BLOCK_LENGTH);