From: Peiwei Hu Date: Tue, 24 May 2022 15:38:39 +0000 (+0800) Subject: Fix the checks of EVP_PKEY_CTX_get/set_rsa_pss_saltlen X-Git-Tag: openssl-3.2.0-alpha1~2590 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7263a7fc3d0c0c17616c2e5309e0fd52ed654ecc;p=thirdparty%2Fopenssl.git Fix the checks of EVP_PKEY_CTX_get/set_rsa_pss_saltlen Reviewed-by: Paul Dale Reviewed-by: Tomas Mraz (Merged from https://github.com/openssl/openssl/pull/18399) --- diff --git a/crypto/rsa/rsa_ameth.c b/crypto/rsa/rsa_ameth.c index 5195f673c6e..bd32700599c 100644 --- a/crypto/rsa/rsa_ameth.c +++ b/crypto/rsa/rsa_ameth.c @@ -454,7 +454,7 @@ static RSA_PSS_PARAMS *rsa_ctx_to_pss(EVP_PKEY_CTX *pkctx) return NULL; if (EVP_PKEY_CTX_get_rsa_mgf1_md(pkctx, &mgf1md) <= 0) return NULL; - if (!EVP_PKEY_CTX_get_rsa_pss_saltlen(pkctx, &saltlen)) + if (EVP_PKEY_CTX_get_rsa_pss_saltlen(pkctx, &saltlen) <= 0) return NULL; if (saltlen == -1) { saltlen = EVP_MD_get_size(sigmd); diff --git a/test/evp_extra_test.c b/test/evp_extra_test.c index 4518271a823..174b0890d34 100644 --- a/test/evp_extra_test.c +++ b/test/evp_extra_test.c @@ -3404,8 +3404,8 @@ static int test_EVP_rsa_pss_set_saltlen(void) && TEST_ptr(sha256_ctx = EVP_MD_CTX_new()) && TEST_true(EVP_DigestSignInit(sha256_ctx, &pkey_ctx, sha256, NULL, pkey)) && TEST_true(EVP_PKEY_CTX_set_rsa_padding(pkey_ctx, RSA_PKCS1_PSS_PADDING)) - && TEST_true(EVP_PKEY_CTX_set_rsa_pss_saltlen(pkey_ctx, test_value)) - && TEST_true(EVP_PKEY_CTX_get_rsa_pss_saltlen(pkey_ctx, &saltlen)) + && TEST_int_gt(EVP_PKEY_CTX_set_rsa_pss_saltlen(pkey_ctx, test_value), 0) + && TEST_int_gt(EVP_PKEY_CTX_get_rsa_pss_saltlen(pkey_ctx, &saltlen), 0) && TEST_int_eq(saltlen, test_value); EVP_MD_CTX_free(sha256_ctx);