Backport libcrypto audit: check return values of EVP functions instead

of assuming they will always suceed.
This commit is contained in:
Dr. Stephen Henson
2011-06-03 20:53:00 +00:00
parent 7978dc989d
commit 24d7159abd
31 changed files with 352 additions and 166 deletions

View File

@@ -202,8 +202,10 @@ int dsa_builtin_paramgen(DSA *ret, size_t bits, size_t qbits,
}
/* step 2 */
EVP_Digest(seed, qsize, md, NULL, evpmd, NULL);
EVP_Digest(buf, qsize, buf2, NULL, evpmd, NULL);
if (!EVP_Digest(seed, qsize, md, NULL, evpmd, NULL))
goto err;
if (!EVP_Digest(buf, qsize, buf2, NULL, evpmd, NULL))
goto err;
for (i = 0; i < qsize; i++)
md[i]^=buf2[i];
@@ -252,7 +254,9 @@ int dsa_builtin_paramgen(DSA *ret, size_t bits, size_t qbits,
break;
}
EVP_Digest(buf, qsize, md ,NULL, evpmd, NULL);
if (!EVP_Digest(buf, qsize, md ,NULL, evpmd,
NULL))
goto err;
/* step 8 */
if (!BN_bin2bn(md, qsize, r0))