diff options
author | Tomas Mraz <tomas@openssl.org> | 2023-12-11 15:19:47 +0100 |
---|---|---|
committer | Tomas Mraz <tomas@openssl.org> | 2023-12-15 12:57:34 +0100 |
commit | e4542332fa36eab6d6bbf33815bde433ade3b547 (patch) | |
tree | fa17faaae4fb3dcd91511113bd1180f49b39ec95 /test/evp_test.c | |
parent | Avoid setting gen_type to -1 in dsa_gen_set_params (diff) | |
download | openssl-e4542332fa36eab6d6bbf33815bde433ade3b547.tar.xz openssl-e4542332fa36eab6d6bbf33815bde433ade3b547.zip |
Fix provider compatibility check crash in evp_test
EVP_MAC_CTX_get_mac_size() cannot be called on older
unfixed versions before EVP_MAC_init().
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Shane Lontis <shane.lontis@oracle.com>
(Merged from https://github.com/openssl/openssl/pull/23006)
Diffstat (limited to '')
-rw-r--r-- | test/evp_test.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/test/evp_test.c b/test/evp_test.c index cef7b1b9e8..ecc7f7fe20 100644 --- a/test/evp_test.c +++ b/test/evp_test.c @@ -1514,7 +1514,7 @@ static int mac_test_run_mac(EVP_TEST *t) EVP_MAC_CTX *ctx = NULL; unsigned char *got = NULL; size_t got_len = 0, size = 0; - size_t size_before_init, size_after_init, size_val = 0; + size_t size_before_init = 0, size_after_init, size_val = 0; int i, block_size = -1, output_size = -1; OSSL_PARAM params[21], sizes[3], *psizes = sizes; size_t params_n = 0; @@ -1622,7 +1622,8 @@ static int mac_test_run_mac(EVP_TEST *t) t->err = "MAC_CREATE_ERROR"; goto err; } - size_before_init = EVP_MAC_CTX_get_mac_size(ctx); + if (fips_provider_version_gt(libctx, 3, 2, 0)) + size_before_init = EVP_MAC_CTX_get_mac_size(ctx); if (!EVP_MAC_init(ctx, expected->key, expected->key_len, params)) { t->err = "MAC_INIT_ERROR"; goto err; |