resolved: check return value of gcrypt APIs

Coverity complains about missing error check.

CID #1453234
This commit is contained in:
Luca Boccassi
2021-05-20 10:47:41 +01:00
parent 06a368e819
commit f09e336b3a
+6 -3
View File
@@ -805,7 +805,9 @@ int dnssec_verify_rrset(
case DNSSEC_ALGORITHM_ED448:
*result = DNSSEC_UNSUPPORTED_ALGORITHM;
return 0;
default:
default: {
gcry_error_t err;
/* OK, the RRs are now in canonical order. Let's calculate the digest */
md_algorithm = algorithm_to_gcrypt_md(rrsig->rrsig.algorithm);
if (md_algorithm == -EOPNOTSUPP) {
@@ -815,8 +817,8 @@ int dnssec_verify_rrset(
if (md_algorithm < 0)
return md_algorithm;
gcry_md_open(&md, md_algorithm, 0);
if (!md)
err = gcry_md_open(&md, md_algorithm, 0);
if (gcry_err_code(err) != GPG_ERR_NO_ERROR || !md)
return -EIO;
hash_size = gcry_md_get_algo_dlen(md_algorithm);
@@ -828,6 +830,7 @@ int dnssec_verify_rrset(
if (!hash)
return -EIO;
}
}
switch (rrsig->rrsig.algorithm) {