From: Pauli Date: Fri, 19 Mar 2021 04:49:57 +0000 (+1000) Subject: evp: fix coverity 1472682: argument cannot be negative X-Git-Tag: openssl-3.0.0-alpha14~32 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1002bb9ff0e35b4195586199222f9bad77837162;p=thirdparty%2Fopenssl.git evp: fix coverity 1472682: argument cannot be negative Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/14620) --- diff --git a/crypto/evp/e_cast.c b/crypto/evp/e_cast.c index 8325a5f8d21..883030224ba 100644 --- a/crypto/evp/e_cast.c +++ b/crypto/evp/e_cast.c @@ -40,7 +40,11 @@ IMPLEMENT_BLOCK_CIPHER(cast5, ks, CAST, EVP_CAST_KEY, static int cast_init_key(EVP_CIPHER_CTX *ctx, const unsigned char *key, const unsigned char *iv, int enc) { - CAST_set_key(&data(ctx)->ks, EVP_CIPHER_CTX_key_length(ctx), key); + int keylen = EVP_CIPHER_CTX_key_length(ctx); + + if (keylen <= 0) + return 0; + CAST_set_key(&data(ctx)->ks, keylen, key); return 1; }