aboutsummaryrefslogtreecommitdiffstats
path: root/crypto/evp/evp_lib.c
diff options
context:
space:
mode:
authorNiels Dossche <niels.dossche@ugent.be>2023-01-23 17:16:34 +0100
committerMatt Caswell <matt@openssl.org>2023-01-25 14:27:14 +0000
commit114d99b46bfb212ffc510865df317ca2c1542623 (patch)
treea13f6db35e8b07fde61009db2afa082186f3706c /crypto/evp/evp_lib.c
parente95d6e1eec2f080713aa91c12e411cea4cffee65 (diff)
downloadopenssl-114d99b46bfb212ffc510865df317ca2c1542623.tar.gz
Fix incomplete checks for EVP_CIPHER_asn1_to_param
EVP_CIPHER_asn1_to_param() returns a value <= 0 in case of an error, and a value greater than 0 in case of success. Two callsites only check for < 0 instead of <= 0. The other callsites perform this check correctly. Change the two callsites to <= 0. Additionally correctly handle a zero return value from EVP_CIPHER_get_asn1_iv as success. Fixes: #20116 CLA: trivial Reviewed-by: Hugo Landau <hlandau@openssl.org> Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/201213)
Diffstat (limited to 'crypto/evp/evp_lib.c')
-rw-r--r--crypto/evp/evp_lib.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/crypto/evp/evp_lib.c b/crypto/evp/evp_lib.c
index 8a66433512..91f72aa930 100644
--- a/crypto/evp/evp_lib.c
+++ b/crypto/evp/evp_lib.c
@@ -209,7 +209,7 @@ int evp_cipher_asn1_to_param_ex(EVP_CIPHER_CTX *c, ASN1_TYPE *type,
break;
default:
- ret = EVP_CIPHER_get_asn1_iv(c, type);
+ ret = EVP_CIPHER_get_asn1_iv(c, type) >= 0 ? 1 : -1;
}
} else if (cipher->prov != NULL) {
OSSL_PARAM params[3], *p = params;