]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
Use RUNTIME_CHECK instead of check_result() where it is safe to do so
authorMichał Kępień <michal@isc.org>
Fri, 15 Jun 2018 07:59:20 +0000 (09:59 +0200)
committerMichał Kępień <michal@isc.org>
Fri, 15 Jun 2018 08:16:41 +0000 (10:16 +0200)
Replace calls to check_result() with RUNTIME_CHECK assertions for all
dns_rdata_tostruct() calls in lib/dns/zoneverify.c as this function
cannot fail when the "mctx" argument is NULL (and that is the case for
all call sites of this function throughout lib/dns/zoneverify.c).

lib/dns/zoneverify.c

index c12eb81d33e31cd5c2eff46f0253112972d1d91d..e7b532317ec2b8e3d987f3054869755e2320e480 100644 (file)
@@ -205,7 +205,7 @@ goodsig(const vctx_t *vctx, dns_rdata_t *sigrdata, dns_name_t *name,
        isc_result_t result;
 
        result = dns_rdata_tostruct(sigrdata, &sig, NULL);
-       check_result(result, "dns_rdata_tostruct()");
+       RUNTIME_CHECK(result == ISC_R_SUCCESS);
 
        for (result = dns_rdataset_first(keyrdataset);
             result == ISC_R_SUCCESS;
@@ -213,7 +213,7 @@ goodsig(const vctx_t *vctx, dns_rdata_t *sigrdata, dns_name_t *name,
                dns_rdata_t rdata = DNS_RDATA_INIT;
                dns_rdataset_current(keyrdataset, &rdata);
                result = dns_rdata_tostruct(&rdata, &key, NULL);
-               check_result(result, "dns_rdata_tostruct()");
+               RUNTIME_CHECK(result == ISC_R_SUCCESS);
                result = dns_dnssec_keyfromrdata(vctx->origin, &rdata,
                                                 vctx->mctx, &dstkey);
                if (result != ISC_R_SUCCESS)
@@ -263,7 +263,7 @@ verifynsec(const vctx_t *vctx, dns_name_t *name, dns_dbnode_t *node,
 
        dns_rdataset_current(&rdataset, &rdata);
        result = dns_rdata_tostruct(&rdata, &nsec, NULL);
-       check_result(result, "dns_rdata_tostruct()");
+       RUNTIME_CHECK(result == ISC_R_SUCCESS);
        /* Check bit next name is consistent */
        if (!dns_name_equal(&nsec.next, nextname)) {
                dns_name_format(name, namebuf, sizeof(namebuf));
@@ -435,7 +435,7 @@ match_nsec3(const vctx_t *vctx, dns_name_t *name,
                dns_rdata_t rdata = DNS_RDATA_INIT;
                dns_rdataset_current(rdataset, &rdata);
                result = dns_rdata_tostruct(&rdata, &nsec3, NULL);
-               check_result(result, "dns_rdata_tostruct()");
+               RUNTIME_CHECK(result == ISC_R_SUCCESS);
                if (nsec3.hash == nsec3param->hash &&
                    nsec3.next_length == rhsize &&
                    nsec3.iterations == nsec3param->iterations &&
@@ -478,7 +478,7 @@ match_nsec3(const vctx_t *vctx, dns_name_t *name,
                dns_rdata_t rdata = DNS_RDATA_INIT;
                dns_rdataset_current(rdataset, &rdata);
                result = dns_rdata_tostruct(&rdata, &nsec3, NULL);
-               check_result(result, "dns_rdata_tostruct()");
+               RUNTIME_CHECK(result == ISC_R_SUCCESS);
                if (nsec3.hash == nsec3param->hash &&
                    nsec3.iterations == nsec3param->iterations &&
                    nsec3.salt_length == nsec3param->salt_length &&
@@ -510,7 +510,7 @@ innsec3params(dns_rdata_nsec3_t *nsec3, dns_rdataset_t *nsec3paramset) {
 
                dns_rdataset_current(nsec3paramset, &rdata);
                result = dns_rdata_tostruct(&rdata, &nsec3param, NULL);
-               check_result(result, "dns_rdata_tostruct()");
+               RUNTIME_CHECK(result == ISC_R_SUCCESS);
                if (nsec3param.flags == 0 &&
                    nsec3param.hash == nsec3->hash &&
                    nsec3param.iterations == nsec3->iterations &&
@@ -556,7 +556,7 @@ record_found(const vctx_t *vctx, dns_name_t *name, dns_dbnode_t *node,
                dns_rdata_t rdata = DNS_RDATA_INIT;
                dns_rdataset_current(&rdataset, &rdata);
                result = dns_rdata_tostruct(&rdata, &nsec3, NULL);
-               check_result(result, "dns_rdata_tostruct()");
+               RUNTIME_CHECK(result == ISC_R_SUCCESS);
                if (nsec3.next_length != isc_buffer_usedlength(&b))
                        continue;
                /*
@@ -594,7 +594,7 @@ isoptout(const vctx_t *vctx, dns_rdata_t *nsec3rdata) {
        isc_boolean_t ret;
 
        result = dns_rdata_tostruct(nsec3rdata, &nsec3param, NULL);
-       check_result(result, "dns_rdata_tostruct()");
+       RUNTIME_CHECK(result == ISC_R_SUCCESS);
 
        dns_fixedname_init(&fixed);
        result = dns_nsec3_hashname(&fixed, rawhash, &rhsize, vctx->origin,
@@ -619,10 +619,8 @@ isoptout(const vctx_t *vctx, dns_rdata_t *nsec3rdata) {
        dns_rdataset_current(&rdataset, &rdata);
 
        result = dns_rdata_tostruct(&rdata, &nsec3, NULL);
-       if (result != ISC_R_SUCCESS)
-               ret = ISC_FALSE;
-       else
-               ret = ISC_TF((nsec3.flags & DNS_NSEC3FLAG_OPTOUT) != 0);
+       RUNTIME_CHECK(result == ISC_R_SUCCESS);
+       ret = ISC_TF((nsec3.flags & DNS_NSEC3FLAG_OPTOUT) != 0);
 
        if (dns_rdataset_isassociated(&rdataset))
                dns_rdataset_disassociate(&rdataset);
@@ -650,7 +648,7 @@ verifynsec3(const vctx_t *vctx, dns_name_t *name, dns_rdata_t *rdata,
        isc_boolean_t optout;
 
        result = dns_rdata_tostruct(rdata, &nsec3param, NULL);
-       check_result(result, "dns_rdata_tostruct()");
+       RUNTIME_CHECK(result == ISC_R_SUCCESS);
 
        if (nsec3param.flags != 0)
                return (ISC_R_SUCCESS);
@@ -774,7 +772,7 @@ verifyset(vctx_t *vctx, dns_rdataset_t *rdataset, dns_name_t *name,
 
                dns_rdataset_current(&sigrdataset, &rdata);
                result = dns_rdata_tostruct(&rdata, &sig, NULL);
-               check_result(result, "dns_rdata_tostruct()");
+               RUNTIME_CHECK(result == ISC_R_SUCCESS);
                if (rdataset->ttl != sig.originalttl) {
                        dns_name_format(name, namebuf, sizeof(namebuf));
                        dns_rdatatype_format(rdataset->type, typebuf,
@@ -1270,7 +1268,7 @@ check_dnskey(vctx_t *vctx) {
             result = dns_rdataset_next(&vctx->keyset)) {
                dns_rdataset_current(&vctx->keyset, &rdata);
                result = dns_rdata_tostruct(&rdata, &dnskey, NULL);
-               check_result(result, "dns_rdata_tostruct");
+               RUNTIME_CHECK(result == ISC_R_SUCCESS);
                is_ksk = ISC_TF((dnskey.flags & DNS_KEYFLAG_KSK) != 0);
 
                if ((dnskey.flags & DNS_KEYOWNER_ZONE) == 0)