27 lines
1.1 KiB
Diff
27 lines
1.1 KiB
Diff
diff -up openssl-3.0.0/apps/speed.c.beldmit openssl-3.0.0/apps/speed.c
|
|
--- openssl-3.0.0/apps/speed.c.beldmit 2021-12-21 15:14:04.210431584 +0100
|
|
+++ openssl-3.0.0/apps/speed.c 2021-12-21 15:46:05.554085125 +0100
|
|
@@ -547,6 +547,9 @@ static int EVP_MAC_loop(int algindex, vo
|
|
for (count = 0; COND(c[algindex][testnum]); count++) {
|
|
size_t outl;
|
|
|
|
+ if (mctx == NULL)
|
|
+ return -1;
|
|
+
|
|
if (!EVP_MAC_init(mctx, NULL, 0, NULL)
|
|
|| !EVP_MAC_update(mctx, buf, lengths[testnum])
|
|
|| !EVP_MAC_final(mctx, mac, &outl, sizeof(mac)))
|
|
@@ -1922,8 +1925,10 @@ int speed_main(int argc, char **argv)
|
|
if (loopargs[i].mctx == NULL)
|
|
goto end;
|
|
|
|
- if (!EVP_MAC_CTX_set_params(loopargs[i].mctx, params))
|
|
- goto end;
|
|
+ if (!EVP_MAC_CTX_set_params(loopargs[i].mctx, params)) {
|
|
+ EVP_MAC_CTX_free(loopargs[i].mctx);
|
|
+ loopargs[i].mctx = NULL;
|
|
+ }
|
|
}
|
|
for (testnum = 0; testnum < size_num; testnum++) {
|
|
print_message(names[D_HMAC], c[D_HMAC][testnum], lengths[testnum],
|