CID :
1458169 RESOURCE LEAK ffc_params_generate.c - False positive, but addressed another Leak in adjacent code
CID :
1458171 UNCHECKED RET apps/pkeyutl.c
CID :
1458173 DEAD CODE ffc_params_generate.c
CID :
1458174 RESOURCE LEAK ssl_lib.c
Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Bernd Edlinger <bernd.edlinger@hotmail.de>
(Merged from https://github.com/openssl/openssl/pull/11048)
|| (group = EC_KEY_get0_group(eckey)) == NULL
|| (nid = EC_GROUP_get_curve_name(group)) == 0)
goto end;
|| (group = EC_KEY_get0_group(eckey)) == NULL
|| (nid = EC_GROUP_get_curve_name(group)) == 0)
goto end;
- if (nid == NID_sm2)
- EVP_PKEY_set_alias_type(pkey, EVP_PKEY_SM2);
+ if (nid == NID_sm2
+ && !EVP_PKEY_set_alias_type(pkey, EVP_PKEY_SM2))
+ goto end;
}
#endif
*pkeysize = EVP_PKEY_size(pkey);
}
#endif
*pkeysize = EVP_PKEY_size(pkey);
return 80;
if (L == 2048 && (N == 224 || N == 256))
return 112;
return 80;
if (L == 2048 && (N == 224 || N == 256))
return 112;
- if (L == 2048 && N == 256)
- return 112;
if (L == 3072 && N == 256)
return 128;
}
if (L == 3072 && N == 256)
return 128;
}
EVP_MD_CTX *mctx = NULL;
int mdsize;
EVP_MD_CTX *mctx = NULL;
int mdsize;
+ mdsize = EVP_MD_size(evpmd);
+ if (mdsize <= 0)
+ return 0;
+
mctx = EVP_MD_CTX_new();
if (mctx == NULL)
mctx = EVP_MD_CTX_new();
if (mctx == NULL)
- mdsize = EVP_MD_size(evpmd);
- if (mdsize <= 0)
- goto err;
/*
* A.2.3 Step (4) & (5)
* A.2.4 Step (6) & (7)
/*
* A.2.3 Step (4) & (5)
* A.2.4 Step (6) & (7)
|| !EVP_DigestFinal_ex(mctx, md, NULL)
|| (BN_bin2bn(md, mdsize, tmp) == NULL)
|| !BN_mod_exp_mont(g, tmp, e, p, ctx, mont))
|| !EVP_DigestFinal_ex(mctx, md, NULL)
|| (BN_bin2bn(md, mdsize, tmp) == NULL)
|| !BN_mod_exp_mont(g, tmp, e, p, ctx, mont))
+ break; /* exit on failure */
/*
* A.2.3 Step (10)
* A.2.4 Step (12)
/*
* A.2.3 Step (10)
* A.2.4 Step (12)
EVP_MD_CTX_free(mctx);
return ret;
}
EVP_MD_CTX_free(mctx);
return ret;
}
if (seed != params->seed)
OPENSSL_free(seed);
OPENSSL_free(seed_tmp);
if (seed != params->seed)
OPENSSL_free(seed);
OPENSSL_free(seed_tmp);
BN_CTX_end(ctx);
BN_CTX_free(ctx);
BN_MONT_CTX_free(mont);
BN_CTX_end(ctx);
BN_CTX_free(ctx);
BN_MONT_CTX_free(mont);
/* initialize cipher/digest methods table */
if (!ssl_load_ciphers(ret))
/* initialize cipher/digest methods table */
if (!ssl_load_ciphers(ret))
if (!SSL_CTX_set_ciphersuites(ret, OSSL_default_ciphersuites()))
goto err;
if (!SSL_CTX_set_ciphersuites(ret, OSSL_default_ciphersuites()))
goto err;