]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
switch to CHECK where it wasn't being used
authorEvan Hunt <each@isc.org>
Thu, 22 May 2025 00:13:44 +0000 (17:13 -0700)
committerEvan Hunt <each@isc.org>
Wed, 3 Dec 2025 21:45:42 +0000 (13:45 -0800)
replace all instances of the pattern:

        result = <statement>
        if (result != ISC_R_SUCCESS) {
                goto cleanup;
        }

with:

        CHECK(<statement>);

52 files changed:
bin/delv/delv.c
bin/dig/dighost.c
bin/dnssec/dnssec-signzone.c
bin/named/builtin.c
bin/named/config.c
bin/named/control.c
bin/named/controlconf.c
bin/named/log.c
bin/named/server.c
bin/named/statschannel.c
bin/named/transportconf.c
bin/named/tsigconf.c
bin/named/zoneconf.c
bin/nsupdate/nsupdate.c
bin/tests/system/dyndb/driver/instance.c
bin/tools/named-makejournal.c
fuzz/dns_message_parse.c
fuzz/dns_rdata_fromtext.c
lib/dns/cache.c
lib/dns/catz.c
lib/dns/client.c
lib/dns/dlz.c
lib/dns/master.c
lib/dns/masterdump.c
lib/dns/message.c
lib/dns/notify.c
lib/dns/nsec.c
lib/dns/nta.c
lib/dns/qpcache.c
lib/dns/rdata.c
lib/dns/rdataslab.c
lib/dns/request.c
lib/dns/resconf.c
lib/dns/resolver.c
lib/dns/rootns.c
lib/dns/rpz.c
lib/dns/sdlz.c
lib/dns/transport.c
lib/dns/validator.c
lib/dns/view.c
lib/dns/zone.c
lib/dns/zoneverify.c
lib/isc/interfaceiter.c
lib/isc/netmgr/tcp.c
lib/isccfg/aclconf.c
lib/isccfg/check.c
lib/isccfg/kaspconf.c
lib/isccfg/namedconf.c
lib/isccfg/parser.c
lib/ns/client.c
lib/ns/query.c
tests/libtest/ns.c

index 80f52231f3585cbcf22cfd853f8486926d4346fc..eba04e85b12007bb97e315264c2ec22c54592b79 100644 (file)
@@ -676,8 +676,7 @@ key_fromconfig(const cfg_obj_t *key, dns_client_t *client, dns_view_t *toview) {
                        delv_log(ISC_LOG_ERROR,
                                 "key '%s': invalid initialization method '%s'",
                                 keynamestr, atstr);
-                       result = ISC_R_FAILURE;
-                       goto cleanup;
+                       CHECK(ISC_R_FAILURE);
                }
        }
 
index 30895c8103ecf7d02350d049ce1b570bbbb2a592..81d1cc552bdb9532d6d51e61436d9055d0d6091d 100644 (file)
@@ -862,26 +862,19 @@ setup_text_key(void) {
        secretsize = (unsigned int)strlen(keysecret) * 3 / 4;
        secretstore = isc_mem_allocate(isc_g_mctx, secretsize);
        isc_buffer_init(&secretbuf, secretstore, secretsize);
-       result = isc_base64_decodestring(keysecret, &secretbuf);
-       if (result != ISC_R_SUCCESS) {
-               goto failure;
-       }
+       CHECK(isc_base64_decodestring(keysecret, &secretbuf));
 
        secretsize = isc_buffer_usedlength(&secretbuf);
 
        if (hmac_alg == DST_ALG_UNKNOWN) {
-               result = DST_R_UNSUPPORTEDALG;
-               goto failure;
+               CHECK(DST_R_UNSUPPORTEDALG);
        }
 
-       result = dns_name_fromtext(keyname, namebuf, dns_rootname, 0);
-       if (result != ISC_R_SUCCESS) {
-               goto failure;
-       }
+       CHECK(dns_name_fromtext(keyname, namebuf, dns_rootname, 0));
 
        result = dns_tsigkey_create(keyname, hmac_alg, secretstore,
                                    (int)secretsize, isc_g_mctx, &tsigkey);
-failure:
+cleanup:
        if (result != ISC_R_SUCCESS) {
                printf(";; Couldn't create key %s: %s\n", keynametext,
                       isc_result_totext(result));
@@ -1086,16 +1079,10 @@ read_confkey(void) {
                return ISC_R_FILENOTFOUND;
        }
 
-       result = cfg_parse_file(isc_g_mctx, keyfile, &cfg_type_sessionkey, 0,
-                               &file);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(cfg_parse_file(isc_g_mctx, keyfile, &cfg_type_sessionkey, 0,
+                            &file));
 
-       result = cfg_map_get(file, "key", &keyobj);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(cfg_map_get(file, "key", &keyobj));
 
        (void)cfg_map_get(keyobj, "secret", &secretobj);
        (void)cfg_map_get(keyobj, "algorithm", &algorithmobj);
@@ -1147,7 +1134,7 @@ setup_file_key(void) {
        if (result != ISC_R_SUCCESS) {
                fprintf(stderr, "Couldn't read key from %s: %s\n", keyfile,
                        isc_result_totext(result));
-               goto failure;
+               goto cleanup;
        }
 
        switch (dst_key_alg(dstkey)) {
@@ -1175,7 +1162,7 @@ setup_file_key(void) {
                }
        }
 
-failure:
+cleanup:
        if (dstkey != NULL) {
                dst_key_free(&dstkey);
        }
@@ -2764,21 +2751,14 @@ get_create_tls_context(dig_query_t *query, const bool is_https,
        if (result != ISC_R_SUCCESS) {
                if (query->lookup->tls_ca_set) {
                        if (found_store == NULL) {
-                               result = isc_tls_cert_store_create(
-                                       query->lookup->tls_ca_file, &store);
-
-                               if (result != ISC_R_SUCCESS) {
-                                       goto failure;
-                               }
+                               CHECK(isc_tls_cert_store_create(
+                                       query->lookup->tls_ca_file, &store));
                        } else {
                                store = found_store;
                        }
                }
 
-               result = isc_tlsctx_createclient(&ctx);
-               if (result != ISC_R_SUCCESS) {
-                       goto failure;
-               }
+               CHECK(isc_tlsctx_createclient(&ctx));
 
                if (store != NULL) {
                        const char *hostname = get_tls_sni_hostname(query);
@@ -2788,23 +2768,17 @@ get_create_tls_context(dig_query_t *query, const bool is_https,
                         * SubjectAltName must be checked. That is NOT the case
                         * for HTTPS.
                         */
-                       result = isc_tlsctx_enable_peer_verification(
+                       CHECK(isc_tlsctx_enable_peer_verification(
                                ctx, false, store, hostname,
-                               hostname_ignore_subject);
-                       if (result != ISC_R_SUCCESS) {
-                               goto failure;
-                       }
+                               hostname_ignore_subject));
                }
 
                if (query->lookup->tls_key_file_set &&
                    query->lookup->tls_cert_file_set)
                {
-                       result = isc_tlsctx_load_certificate(
+                       CHECK(isc_tlsctx_load_certificate(
                                ctx, query->lookup->tls_key_file,
-                               query->lookup->tls_cert_file);
-                       if (result != ISC_R_SUCCESS) {
-                               goto failure;
-                       }
+                               query->lookup->tls_cert_file));
                }
 
                if (!is_https) {
@@ -2840,7 +2814,7 @@ get_create_tls_context(dig_query_t *query, const bool is_https,
 
        INSIST(!query->lookup->tls_ca_set || found_store != NULL);
        return found_ctx;
-failure:
+cleanup:
        if (ctx != NULL) {
                isc_tlsctx_free(&ctx);
        }
index 7057ed8a2e400d743ce8406ca50768a086d9fc6b..43a295ca2a878c0e9621d4541058edfdc52c3f67 100644 (file)
@@ -1384,11 +1384,8 @@ setsoaserial(uint32_t serial, dns_updatemethod_t method) {
 
        dns_rdataset_init(&rdataset);
 
-       result = dns_db_findrdataset(gdb, node, gversion, dns_rdatatype_soa, 0,
-                                    0, &rdataset, NULL);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_db_findrdataset(gdb, node, gversion, dns_rdatatype_soa, 0, 0,
+                                 &rdataset, NULL));
 
        result = dns_rdataset_first(&rdataset);
        RUNTIME_CHECK(result == ISC_R_SUCCESS);
@@ -2520,22 +2517,14 @@ loadzonekeys(bool preserve_keys, bool load_public) {
        dns_rdataset_init(&keysigs);
 
        /* Make note of the keys which signed the SOA, if any */
-       result = dns_db_findrdataset(gdb, node, currentversion,
-                                    dns_rdatatype_soa, 0, 0, &rdataset,
-                                    &soasigs);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_db_findrdataset(gdb, node, currentversion, dns_rdatatype_soa,
+                                 0, 0, &rdataset, &soasigs));
 
        /* Preserve the TTL of the DNSKEY RRset, if any */
        dns_rdataset_disassociate(&rdataset);
-       result = dns_db_findrdataset(gdb, node, currentversion,
-                                    dns_rdatatype_dnskey, 0, 0, &rdataset,
-                                    &keysigs);
-
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_db_findrdataset(gdb, node, currentversion,
+                                 dns_rdatatype_dnskey, 0, 0, &rdataset,
+                                 &keysigs));
 
        if (set_keyttl && keyttl != rdataset.ttl) {
                fprintf(stderr,
@@ -2886,12 +2875,8 @@ set_nsec3params(bool update, bool set_salt, bool set_optout, bool set_iter) {
        dns_rdataset_init(&rdataset);
 
        orig_saltlen = sizeof(orig_salt);
-       result = dns_db_getnsec3parameters(gdb, ver, &orig_hash, NULL,
-                                          &orig_iter, orig_salt,
-                                          &orig_saltlen);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_db_getnsec3parameters(gdb, ver, &orig_hash, NULL, &orig_iter,
+                                       orig_salt, &orig_saltlen));
 
        nsec_datatype = dns_rdatatype_nsec3;
 
@@ -2928,16 +2913,10 @@ set_nsec3params(bool update, bool set_salt, bool set_optout, bool set_iter) {
                                    orig_saltlen);
        check_result(result, "dns_nsec3_hashname");
 
-       result = dns_db_findnsec3node(gdb, hashname, false, &node);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_db_findnsec3node(gdb, hashname, false, &node));
 
-       result = dns_db_findrdataset(gdb, node, ver, dns_rdatatype_nsec3, 0, 0,
-                                    &rdataset, NULL);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_db_findrdataset(gdb, node, ver, dns_rdatatype_nsec3, 0, 0,
+                                 &rdataset, NULL));
 
        result = dns_rdataset_first(&rdataset);
        check_result(result, "dns_rdataset_first");
index c24fbe164e5f89c11efc4b6c95842b37161092a0..814ad911bd4be8ac4cf92dedf7471e8459cd0d16 100644 (file)
@@ -1173,15 +1173,13 @@ create(isc_mem_t *mctx, const dns_name_t *origin, dns_dbtype_t type,
 
        if (needargs) {
                if (argc != 3) {
-                       result = DNS_R_SYNTAX;
-                       goto cleanup;
+                       CHECK(DNS_R_SYNTAX);
                }
 
                bdb->server = isc_mem_strdup(isc_g_mctx, argv[1]);
                bdb->contact = isc_mem_strdup(isc_g_mctx, argv[2]);
        } else if (argc != 1) {
-               result = DNS_R_SYNTAX;
-               goto cleanup;
+               CHECK(DNS_R_SYNTAX);
        }
 
        bdb->common.magic = DNS_DB_MAGIC;
index 81eb498925e2b39673fb0759123231d72cfe6f94..31683d005cae6d7c8d1a68e80294a87750cb65f1 100644 (file)
@@ -72,11 +72,8 @@ named_config_parsefile(cfg_obj_t **conf) {
                      ISC_LOG_INFO, "parsing user configuration from '%s'",
                      named_g_conffile);
 
-       result = cfg_parse_file(isc_g_mctx, named_g_conffile,
-                               &cfg_type_namedconf, 0, conf);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(cfg_parse_file(isc_g_mctx, named_g_conffile, &cfg_type_namedconf,
+                            0, conf));
 
        /*
         * Check the validity of the configuration.
@@ -85,11 +82,7 @@ named_config_parsefile(cfg_obj_t **conf) {
         * checked later when the modules are actually loaded and
         * registered.)
         */
-       result = isccfg_check_namedconf(*conf, BIND_CHECK_ALGORITHMS,
-                                       isc_g_mctx);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(isccfg_check_namedconf(*conf, BIND_CHECK_ALGORITHMS, isc_g_mctx));
 
        goto out;
 
@@ -568,24 +561,15 @@ named_config_getipandkeylist(const cfg_obj_t *config, const cfg_obj_t *list,
        /*
         * Get system defaults.
         */
-       result = named_config_getport(config, "port", &def_port);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(named_config_getport(config, "port", &def_port));
 
-       result = named_config_getport(config, "tls-port", &def_tlsport);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(named_config_getport(config, "tls-port", &def_tlsport));
 
        /*
         * Process the (nested) list(s).
         */
-       result = getipandkeylist(def_port, def_tlsport, config, list,
-                                (in_port_t)0, NULL, NULL, mctx, &s);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(getipandkeylist(def_port, def_tlsport, config, list, (in_port_t)0,
+                             NULL, NULL, mctx, &s));
 
        shrink_array(mctx, s.addrs, s.count, s.addrsallocated);
        shrink_array(mctx, s.keys, s.count, s.keysallocated);
index 8857f5eb9048ebbb436d7405e14a9276e8ce3e47..8f20933f021d20bc5b543bf9d148d0c5c042f59d 100644 (file)
@@ -101,15 +101,9 @@ named_control_docommand(isccc_sexpr_t *message, bool readonly,
 
        isc_buffer_init(&src, cmdline, strlen(cmdline));
        isc_buffer_add(&src, strlen(cmdline));
-       result = isc_lex_openbuffer(lex, &src);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(isc_lex_openbuffer(lex, &src));
 
-       result = getcommand(lex, &command);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(getcommand(lex, &command));
 
        /*
         * Compare the 'command' parameter against all known control commands.
@@ -140,8 +134,7 @@ named_control_docommand(isccc_sexpr_t *message, bool readonly,
                              "rejecting restricted control channel "
                              "command '%s'",
                              cmdline);
-               result = ISC_R_FAILURE;
-               goto cleanup;
+               CHECK(ISC_R_FAILURE);
        }
 
        isc_log_write(NAMED_LOGCATEGORY_GENERAL, NAMED_LOGMODULE_CONTROL,
index a4aba2ea252b649c56913d16f9570da19fdd3ef8..d014a831e4312fbf4f945f162b8ddf3e74554045 100644 (file)
@@ -305,11 +305,8 @@ control_respond(controlconnection_t *conn) {
        isc_region_t r;
        isc_result_t result;
 
-       result = isccc_cc_createresponse(conn->request, conn->now,
-                                        conn->now + 60, &conn->response);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(isccc_cc_createresponse(conn->request, conn->now, conn->now + 60,
+                                     &conn->response));
 
        if (conn->result == ISC_R_SHUTTINGDOWN) {
                result = ISC_R_SUCCESS;
@@ -445,14 +442,12 @@ control_recvmessage(isc_nmhandle_t *handle ISC_ATTR_UNUSED, isc_result_t result,
        }
 
        if (!match) {
-               result = ISCCC_R_BADAUTH;
-               goto cleanup;
+               CHECK(ISCCC_R_BADAUTH);
        }
 
        /* We shouldn't be getting a reply. */
        if (isccc_cc_isreply(conn->request)) {
-               result = ISC_R_FAILURE;
-               goto cleanup;
+               CHECK(ISC_R_FAILURE);
        }
 
        conn->now = isc_stdtime_now();
@@ -462,20 +457,17 @@ control_recvmessage(isc_nmhandle_t *handle ISC_ATTR_UNUSED, isc_result_t result,
         */
        conn->ctrl = isccc_alist_lookup(conn->request, "_ctrl");
        if (!isccc_alist_alistp(conn->ctrl)) {
-               result = ISC_R_FAILURE;
-               goto cleanup;
+               CHECK(ISC_R_FAILURE);
        }
 
        if (isccc_cc_lookupuint32(conn->ctrl, "_tim", &sent) == ISC_R_SUCCESS) {
                if ((sent + CLOCKSKEW) < conn->now ||
                    (sent - CLOCKSKEW) > conn->now)
                {
-                       result = DNS_R_CLOCKSKEW;
-                       goto cleanup;
+                       CHECK(DNS_R_CLOCKSKEW);
                }
        } else {
-               result = ISC_R_FAILURE;
-               goto cleanup;
+               CHECK(ISC_R_FAILURE);
        }
 
        /*
@@ -484,8 +476,7 @@ control_recvmessage(isc_nmhandle_t *handle ISC_ATTR_UNUSED, isc_result_t result,
        if (isccc_cc_lookupuint32(conn->ctrl, "_exp", &exp) == ISC_R_SUCCESS &&
            conn->now > exp)
        {
-               result = DNS_R_EXPIRED;
-               goto cleanup;
+               CHECK(DNS_R_EXPIRED);
        }
 
        /*
@@ -508,8 +499,7 @@ control_recvmessage(isc_nmhandle_t *handle ISC_ATTR_UNUSED, isc_result_t result,
                     ISC_R_SUCCESS ||
             conn->nonce != nonce))
        {
-               result = ISCCC_R_BADAUTH;
-               goto cleanup;
+               CHECK(ISCCC_R_BADAUTH);
        }
 
        isc_buffer_allocate(listener->mctx, &conn->text, 2 * 2048);
index e4867ffbc52f26af33987db262e18d510b6dd18e..c2a2acc855c580b79dae83279c7b167981835b90 100644 (file)
@@ -44,10 +44,7 @@ named_log_init(bool safe) {
                named_log_setdefaultchannels(lcfg);
        }
 
-       result = named_log_setdefaultcategory(lcfg);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(named_log_setdefaultcategory(lcfg));
 
        named_log_setdefaultsslkeylogfile(lcfg);
        rcu_read_unlock();
@@ -199,12 +196,8 @@ isc_result_t
 named_log_setdefaultcategory(isc_logconfig_t *lcfg) {
        isc_result_t result = ISC_R_SUCCESS;
 
-       result = isc_log_usechannel(lcfg, "default_debug",
-                                   ISC_LOGCATEGORY_DEFAULT,
-                                   ISC_LOGMODULE_DEFAULT);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(isc_log_usechannel(lcfg, "default_debug", ISC_LOGCATEGORY_DEFAULT,
+                                ISC_LOGMODULE_DEFAULT));
 
        if (!named_g_logstderr) {
                if (named_g_logfile != NULL) {
index f99e897dd77c72592ef32bf1ad33e8105b045e64..7aeeec2b87f4f3fecb42770e672c41ce17f27019 100644 (file)
@@ -670,7 +670,7 @@ ta_fromconfig(const cfg_obj_t *key, bool *initialp, const char **namestrp,
                INIT_DS,
                STATIC_DS,
                TRUSTED
-       } anchortype;
+       } anchortype = TRUSTED;
        dst_algorithm_t algorithm;
 
        REQUIRE(namestrp != NULL && *namestrp == NULL);
@@ -711,11 +711,8 @@ ta_fromconfig(const cfg_obj_t *key, bool *initialp, const char **namestrp,
                                    "key '%s': "
                                    "invalid initialization method '%s'",
                                    namestr, atstr);
-                       result = ISC_R_FAILURE;
-                       goto cleanup;
+                       CHECK(ISC_R_FAILURE);
                }
-       } else {
-               anchortype = TRUSTED;
        }
 
        isc_buffer_init(&databuf, data, sizeof(data));
@@ -831,8 +828,7 @@ ta_fromconfig(const cfg_obj_t *key, bool *initialp, const char **namestrp,
                                    "key '%s': "
                                    "unknown ds digest type %u",
                                    namestr, ds->digest_type);
-                       result = ISC_R_FAILURE;
-                       goto cleanup;
+                       CHECK(ISC_R_FAILURE);
                        break;
                }
 
@@ -1152,8 +1148,7 @@ configure_view_dnsseckeys(dns_view_t *view, const cfg_obj_t *vconfig,
                        isc_log_write(DNS_LOGCATEGORY_SECURITY,
                                      NAMED_LOGMODULE_SERVER, ISC_LOG_ERROR,
                                      "root key not loaded");
-                       result = ISC_R_FAILURE;
-                       goto cleanup;
+                       CHECK(ISC_R_FAILURE);
                }
        }
 
@@ -1184,8 +1179,7 @@ configure_view_dnsseckeys(dns_view_t *view, const cfg_obj_t *vconfig,
                                      "managed-keys-directory '%s' "
                                      "is not writable",
                                      directory);
-                       result = ISC_R_NOPERM;
-                       goto cleanup;
+                       CHECK(ISC_R_NOPERM);
                }
        }
 
@@ -1520,10 +1514,7 @@ configure_peer(const cfg_obj_t *cpeer, isc_mem_t *mctx, dns_peer_t **peerp) {
        obj = NULL;
        (void)cfg_map_get(cpeer, "keys", &obj);
        if (obj != NULL) {
-               result = dns_peer_setkeybycharp(peer, cfg_obj_asstring(obj));
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(dns_peer_setkeybycharp(peer, cfg_obj_asstring(obj)));
        }
 
        obj = NULL;
@@ -1533,11 +1524,8 @@ configure_peer(const cfg_obj_t *cpeer, isc_mem_t *mctx, dns_peer_t **peerp) {
                (void)cfg_map_get(cpeer, "transfer-source-v6", &obj);
        }
        if (obj != NULL) {
-               result = dns_peer_settransfersource(peer,
-                                                   cfg_obj_assockaddr(obj));
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(dns_peer_settransfersource(peer,
+                                                cfg_obj_assockaddr(obj)));
        }
 
        obj = NULL;
@@ -1547,11 +1535,7 @@ configure_peer(const cfg_obj_t *cpeer, isc_mem_t *mctx, dns_peer_t **peerp) {
                (void)cfg_map_get(cpeer, "notify-source-v6", &obj);
        }
        if (obj != NULL) {
-               result = dns_peer_setnotifysource(peer,
-                                                 cfg_obj_assockaddr(obj));
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(dns_peer_setnotifysource(peer, cfg_obj_assockaddr(obj)));
        }
 
        obj = NULL;
@@ -1562,10 +1546,7 @@ configure_peer(const cfg_obj_t *cpeer, isc_mem_t *mctx, dns_peer_t **peerp) {
        }
        if (obj != NULL) {
                INSIST(cfg_obj_issockaddr(obj));
-               result = dns_peer_setquerysource(peer, cfg_obj_assockaddr(obj));
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(dns_peer_setquerysource(peer, cfg_obj_assockaddr(obj)));
        }
 
        *peerp = peer;
@@ -3861,8 +3842,7 @@ configure_view(dns_view_t *view, dns_viewlist_t *viewlist, cfg_obj_t *config,
                                              "rpz '%s' is not a primary or a "
                                              "secondary zone",
                                              namebuf);
-                               result = ISC_R_NOTFOUND;
-                               goto cleanup;
+                               CHECK(ISC_R_NOTFOUND);
                        }
                }
        }
@@ -3920,11 +3900,8 @@ configure_view(dns_view_t *view, dns_viewlist_t *viewlist, cfg_obj_t *config,
                        (void)cfg_map_get(dlz, "search", &search);
                        if (search == NULL || cfg_obj_asboolean(search)) {
                                dlzdb->search = true;
-                               result = dns_dlzconfigure(
-                                       view, dlzdb, dlzconfigure_callback);
-                               if (result != ISC_R_SUCCESS) {
-                                       goto cleanup;
-                               }
+                               CHECK(dns_dlzconfigure(view, dlzdb,
+                                                      dlzconfigure_callback));
                                ISC_LIST_APPEND(view->dlz_searched, dlzdb,
                                                link);
                        } else {
@@ -4094,35 +4071,23 @@ configure_view(dns_view_t *view, dns_viewlist_t *viewlist, cfg_obj_t *config,
                        obj = NULL;
                        (void)cfg_map_get(map, "clients", &obj);
                        if (obj != NULL) {
-                               result = cfg_acl_fromconfig(obj, config, aclctx,
-                                                           mctx, 0, &clients);
-                               if (result != ISC_R_SUCCESS) {
-                                       goto cleanup;
-                               }
+                               CHECK(cfg_acl_fromconfig(obj, config, aclctx,
+                                                        mctx, 0, &clients));
                        }
                        obj = NULL;
                        (void)cfg_map_get(map, "mapped", &obj);
                        if (obj != NULL) {
-                               result = cfg_acl_fromconfig(obj, config, aclctx,
-                                                           mctx, 0, &mapped);
-                               if (result != ISC_R_SUCCESS) {
-                                       goto cleanup;
-                               }
+                               CHECK(cfg_acl_fromconfig(obj, config, aclctx,
+                                                        mctx, 0, &mapped));
                        }
                        obj = NULL;
                        (void)cfg_map_get(map, "exclude", &obj);
                        if (obj != NULL) {
-                               result = cfg_acl_fromconfig(obj, config, aclctx,
-                                                           mctx, 0, &excluded);
-                               if (result != ISC_R_SUCCESS) {
-                                       goto cleanup;
-                               }
+                               CHECK(cfg_acl_fromconfig(obj, config, aclctx,
+                                                        mctx, 0, &excluded));
                        } else {
                                if (named_g_mapped == NULL) {
-                                       result = create_mapped_acl();
-                                       if (result != ISC_R_SUCCESS) {
-                                               goto cleanup;
-                                       }
+                                       CHECK(create_mapped_acl());
                                }
                                dns_acl_attach(named_g_mapped, &excluded);
                        }
@@ -4144,11 +4109,8 @@ configure_view(dns_view_t *view, dns_viewlist_t *viewlist, cfg_obj_t *config,
                                         &dns64);
                        dns_dns64_append(&view->dns64, dns64);
                        view->dns64cnt++;
-                       result = dns64_reverse(view, mctx, &na, prefixlen,
-                                              server, contact);
-                       if (result != ISC_R_SUCCESS) {
-                               goto cleanup;
-                       }
+                       CHECK(dns64_reverse(view, mctx, &na, prefixlen, server,
+                                           contact));
                        if (clients != NULL) {
                                dns_acl_detach(&clients);
                        }
@@ -4409,8 +4371,7 @@ configure_view(dns_view_t *view, dns_viewlist_t *viewlist, cfg_obj_t *config,
        if (dispatch4 == NULL && dispatch6 == NULL) {
                UNEXPECTED_ERROR("unable to obtain either an IPv4 or"
                                 " an IPv6 dispatch");
-               result = ISC_R_UNEXPECTED;
-               goto cleanup;
+               CHECK(ISC_R_UNEXPECTED);
        }
 
        CHECK(dns_view_createresolver(view, resopts, tlsctx_client_cache,
@@ -5420,10 +5381,7 @@ configure_view(dns_view_t *view, dns_viewlist_t *viewlist, cfg_obj_t *config,
        obj = NULL;
        result = named_config_get(maps, "rate-limit", &obj);
        if (result == ISC_R_SUCCESS) {
-               result = configure_rrl(view, config, obj, aclctx);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(configure_rrl(view, config, obj, aclctx));
        }
 
        /*
@@ -6082,8 +6040,7 @@ configure_zone(const cfg_obj_t *config, const cfg_obj_t *zconfig,
                              ISC_LOG_ERROR,
                              "zone '%s': wrong class for view '%s'", zname,
                              vname);
-               result = ISC_R_FAILURE;
-               goto cleanup;
+               CHECK(ISC_R_FAILURE);
        }
 
        (void)cfg_map_get(zoptions, "in-view", &viewobj);
@@ -6095,8 +6052,7 @@ configure_zone(const cfg_obj_t *config, const cfg_obj_t *zconfig,
                        cfg_obj_log(zconfig, ISC_LOG_ERROR,
                                    "'in-view' option is not permitted in "
                                    "dynamically added zones");
-                       result = ISC_R_FAILURE;
-                       goto cleanup;
+                       CHECK(ISC_R_FAILURE);
                }
 
                result = dns_viewlist_find(viewlist, inview, view->rdclass,
@@ -6104,8 +6060,7 @@ configure_zone(const cfg_obj_t *config, const cfg_obj_t *zconfig,
                if (result != ISC_R_SUCCESS) {
                        cfg_obj_log(zconfig, ISC_LOG_ERROR,
                                    "view '%s' is not yet defined.", inview);
-                       result = ISC_R_FAILURE;
-                       goto cleanup;
+                       CHECK(ISC_R_FAILURE);
                }
 
                result = dns_view_findzone(otherview, origin, DNS_ZTFIND_EXACT,
@@ -6115,8 +6070,7 @@ configure_zone(const cfg_obj_t *config, const cfg_obj_t *zconfig,
                        cfg_obj_log(zconfig, ISC_LOG_ERROR,
                                    "zone '%s' not defined in view '%s'", zname,
                                    inview);
-                       result = ISC_R_FAILURE;
-                       goto cleanup;
+                       CHECK(ISC_R_FAILURE);
                }
 
                CHECK(dns_view_addzone(view, zone));
@@ -6143,8 +6097,7 @@ configure_zone(const cfg_obj_t *config, const cfg_obj_t *zconfig,
        if (typeobj == NULL) {
                cfg_obj_log(zconfig, ISC_LOG_ERROR,
                            "zone '%s' 'type' not specified", zname);
-               result = ISC_R_FAILURE;
-               goto cleanup;
+               CHECK(ISC_R_FAILURE);
        }
        ztypestr = cfg_obj_asstring(typeobj);
 
@@ -6160,8 +6113,7 @@ configure_zone(const cfg_obj_t *config, const cfg_obj_t *zconfig,
                        isc_log_write(NAMED_LOGCATEGORY_GENERAL,
                                      NAMED_LOGMODULE_SERVER, ISC_LOG_ERROR,
                                      "zone '%s': 'file' not specified", zname);
-                       result = ISC_R_FAILURE;
-                       goto cleanup;
+                       CHECK(ISC_R_FAILURE);
                }
                if (dns_name_equal(origin, dns_rootname)) {
                        const char *hintsfile = cfg_obj_asstring(fileobj);
@@ -6202,8 +6154,7 @@ configure_zone(const cfg_obj_t *config, const cfg_obj_t *zconfig,
                if (view->redirect != NULL) {
                        cfg_obj_log(zconfig, ISC_LOG_ERROR,
                                    "redirect zone already exists");
-                       result = ISC_R_EXISTS;
-                       goto cleanup;
+                       CHECK(ISC_R_EXISTS);
                }
                result = dns_viewlist_find(viewlist, view->name, view->rdclass,
                                           &pview);
@@ -6242,8 +6193,7 @@ configure_zone(const cfg_obj_t *config, const cfg_obj_t *zconfig,
                        cfg_obj_log(zconfig, ISC_LOG_ERROR,
                                    "zone '%s' already exists", zname);
                        dns_zone_detach(&dupzone);
-                       result = ISC_R_EXISTS;
-                       goto cleanup;
+                       CHECK(ISC_R_EXISTS);
                }
                INSIST(dupzone == NULL);
        }
@@ -6957,8 +6907,7 @@ generate_session_key(const char *filename, const char *keynamestr,
        if (fp == NULL) {
                isc_log_write(NAMED_LOGCATEGORY_GENERAL, NAMED_LOGMODULE_SERVER,
                              ISC_LOG_ERROR, "could not create %s", filename);
-               result = ISC_R_NOPERM;
-               goto cleanup;
+               CHECK(ISC_R_NOPERM);
        }
 
        fprintf(fp,
@@ -6970,10 +6919,7 @@ generate_session_key(const char *filename, const char *keynamestr,
                (char *)isc_buffer_base(&key_txtbuffer));
 
        CHECK(isc_stdio_flush(fp));
-       result = isc_stdio_close(fp);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(isc_stdio_close(fp));
 
        *keyp = key;
        return ISC_R_SUCCESS;
@@ -7419,11 +7365,8 @@ data_to_cfg(dns_view_t *view, MDB_val *key, MDB_val *data, isc_buffer_t *text,
        INSIST(zone_config != NULL && zone_config_len > 0);
 
        /* zone zonename { config; }; */
-       result = isc_buffer_reserve(text, 6 + zone_name_len + 2 +
-                                                 zone_config_len + 2);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(isc_buffer_reserve(text,
+                                6 + zone_name_len + 2 + zone_config_len + 2));
 
        CHECK(putstr(text, "zone \""));
        CHECK(putmem(text, (const void *)zone_name, zone_name_len));
@@ -10501,11 +10444,8 @@ listenlist_fromconfig(const cfg_obj_t *listenlist, const cfg_obj_t *config,
        CFG_LIST_FOREACH(listenlist, element) {
                ns_listenelt_t *delt = NULL;
                const cfg_obj_t *listener = cfg_listelt_value(element);
-               result = listenelt_fromconfig(listener, config, aclctx, mctx,
-                                             family, tlsctx_cache, &delt);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(listenelt_fromconfig(listener, config, aclctx, mctx,
+                                          family, tlsctx_cache, &delt));
                ISC_LIST_APPEND(dlist->elts, delt, link);
        }
        *target = dlist;
@@ -12386,8 +12326,7 @@ nzd_save(MDB_txn **txnp, MDB_dbi dbi, dns_zone_t *zone,
                                      "Error deleting zone %s "
                                      "from NZD database: %s",
                                      namebuf, mdb_strerror(status));
-                       result = ISC_R_FAILURE;
-                       goto cleanup;
+                       CHECK(ISC_R_FAILURE);
                } else if (status != MDB_NOTFOUND) {
                        commit = true;
                }
@@ -12401,8 +12340,7 @@ nzd_save(MDB_txn **txnp, MDB_dbi dbi, dns_zone_t *zone,
                                      NAMED_LOGMODULE_SERVER, ISC_LOG_ERROR,
                                      "Unable to get options from config in "
                                      "nzd_save()");
-                       result = ISC_R_FAILURE;
-                       goto cleanup;
+                       CHECK(ISC_R_FAILURE);
                }
 
                dzarg.magic = DZARG_MAGIC;
@@ -12415,8 +12353,7 @@ nzd_save(MDB_txn **txnp, MDB_dbi dbi, dns_zone_t *zone,
                                      "Error writing zone config to "
                                      "buffer in nzd_save(): %s",
                                      isc_result_totext(dzarg.result));
-                       result = dzarg.result;
-                       goto cleanup;
+                       CHECK(dzarg.result);
                }
 
                data.mv_data = isc_buffer_base(text);
@@ -12429,8 +12366,7 @@ nzd_save(MDB_txn **txnp, MDB_dbi dbi, dns_zone_t *zone,
                                      "Error inserting zone in "
                                      "NZD database: %s",
                                      mdb_strerror(status));
-                       result = ISC_R_FAILURE;
-                       goto cleanup;
+                       CHECK(ISC_R_FAILURE);
                }
 
                commit = true;
@@ -12724,8 +12660,7 @@ load_nzf(dns_view_t *view) {
 
                origin = cfg_obj_asstring(cfg_tuple_get(zconfig, "name"));
                if (origin == NULL) {
-                       result = ISC_R_FAILURE;
-                       goto cleanup;
+                       CHECK(ISC_R_FAILURE);
                }
 
                /* Normalize zone name */
@@ -12741,8 +12676,7 @@ load_nzf(dns_view_t *view) {
 
                zoptions = cfg_tuple_get(zconfig, "options");
                if (zoptions == NULL) {
-                       result = ISC_R_FAILURE;
-                       goto cleanup;
+                       CHECK(ISC_R_FAILURE);
                }
 
                isc_buffer_clear(text);
@@ -12756,8 +12690,7 @@ load_nzf(dns_view_t *view) {
                                      "Error writing zone config to "
                                      "buffer in load_nzf(): %s",
                                      isc_result_totext(result));
-                       result = dzarg.result;
-                       goto cleanup;
+                       CHECK(dzarg.result);
                }
 
                data.mv_data = isc_buffer_base(text);
@@ -12770,8 +12703,7 @@ load_nzf(dns_view_t *view) {
                                      "Error inserting zone in "
                                      "NZD database: %s",
                                      mdb_strerror(status));
-                       result = ISC_R_FAILURE;
-                       goto cleanup;
+                       CHECK(ISC_R_FAILURE);
                }
 
                commit = true;
@@ -13050,8 +12982,7 @@ do_addzone(named_server_t *server, dns_view_t *view, dns_name_t *name,
                TCHECK(putstr(text, "unable to open NZD database for '"));
                TCHECK(putstr(text, view->newzone.db));
                TCHECK(putstr(text, "'"));
-               result = ISC_R_FAILURE;
-               goto cleanup;
+               CHECK(ISC_R_FAILURE);
        }
 #endif /* HAVE_LMDB */
 
@@ -13712,8 +13643,7 @@ named_server_delzone(named_server_t *server, isc_lex_t *lex,
 
        CHECK(zone_from_args(server, lex, ptr, &zone, zonename, text, false));
        if (zone == NULL) {
-               result = ISC_R_UNEXPECTEDEND;
-               goto cleanup;
+               CHECK(ISC_R_UNEXPECTEDEND);
        }
 
        INSIST(zonename != NULL);
@@ -13724,8 +13654,7 @@ named_server_delzone(named_server_t *server, isc_lex_t *lex,
                TCHECK(putstr(text, zonename));
                TCHECK(putstr(text,
                              "' cannot be deleted: response-policy zone."));
-               result = ISC_R_FAILURE;
-               goto cleanup;
+               CHECK(ISC_R_FAILURE);
        }
 
        view = dns_zone_getview(zone);
@@ -13832,8 +13761,7 @@ named_server_showzone(named_server_t *server, isc_lex_t *lex,
        /* Parse parameters */
        CHECK(zone_from_args(server, lex, NULL, &zone, zonename, text, true));
        if (zone == NULL) {
-               result = ISC_R_UNEXPECTEDEND;
-               goto cleanup;
+               CHECK(ISC_R_UNEXPECTEDEND);
        }
 
        zconfig = dns_zone_getcfg(zone);
@@ -14544,8 +14472,7 @@ named_server_zonestatus(named_server_t *server, isc_lex_t *lex,
 
        CHECK(zone_from_args(server, lex, NULL, &zone, zonename, text, true));
        if (zone == NULL) {
-               result = ISC_R_UNEXPECTEDEND;
-               goto cleanup;
+               CHECK(ISC_R_UNEXPECTEDEND);
        }
 
        /* Inline signing? */
@@ -15354,8 +15281,7 @@ named_server_mkeys(named_server_t *server, isc_lex_t *lex, isc_buffer_t *text) {
        } else {
                snprintf(msg, sizeof(msg), "unknown command '%s'", cmd);
                (void)putstr(text, msg);
-               result = ISC_R_UNEXPECTED;
-               goto cleanup;
+               CHECK(ISC_R_UNEXPECTED);
        }
 
        /* Look for the optional class name. */
index a56f0cc58f07cefcabff604a49b45ab7a635a030..a74af44ceee37066c54463890f99ba005d6fa77f 100644 (file)
@@ -2405,8 +2405,7 @@ zone_jsonrender(dns_zone_t *zone, void *arg) {
                if (zonestats != NULL) {
                        json_object *counters = json_object_new_object();
                        if (counters == NULL) {
-                               result = ISC_R_NOMEMORY;
-                               goto cleanup;
+                               CHECK(ISC_R_NOMEMORY);
                        }
 
                        result = dump_stats(zonestats, isc_statsformat_json,
@@ -2430,8 +2429,7 @@ zone_jsonrender(dns_zone_t *zone, void *arg) {
                if (gluecachestats != NULL) {
                        json_object *counters = json_object_new_object();
                        if (counters == NULL) {
-                               result = ISC_R_NOMEMORY;
-                               goto cleanup;
+                               CHECK(ISC_R_NOMEMORY);
                        }
 
                        result = dump_stats(
@@ -2584,8 +2582,7 @@ xfrin_jsonrender(dns_zone_t *zone, void *arg) {
        }
 
        if (xfrinobj == NULL) {
-               result = ISC_R_NOMEMORY;
-               goto cleanup;
+               CHECK(ISC_R_NOMEMORY);
        }
 
        result = dns_zone_getxfr(zone, &xfr, &is_firstrefresh, &is_running,
@@ -3167,8 +3164,7 @@ generatejson(named_server_t *server, size_t *msglen, const char **msg,
                                                0);
                                        if (result != ISC_R_SUCCESS) {
                                                json_object_put(counters);
-                                               result = dumparg.result;
-                                               goto cleanup;
+                                               CHECK(dumparg.result);
                                        }
 
                                        json_object_object_add(res, "adb",
index de02ab7bb2610fb9ff3e9286bcc62a4cec6d8101..7030c704261e928e42d890b82f441ec3db229e42 100644 (file)
@@ -36,7 +36,7 @@
        result = (dns_name_fromtext(name, &namesrc, dns_rootname, \
                                    DNS_NAME_DOWNCASE));          \
        if (result != ISC_R_SUCCESS) {                            \
-               goto failure;                                     \
+               goto cleanup;                                     \
        }
 
 #define parse_transport_option(map, transport, name, setter)      \
@@ -126,7 +126,7 @@ add_doh_transports(const cfg_obj_t *transportlist, dns_transport_list_t *list) {
        }
 
        return ISC_R_SUCCESS;
-failure:
+cleanup:
        cfg_obj_log(doh, ISC_LOG_ERROR, "configuring DoH '%s': %s", dohid,
                    isc_result_totext(result));
 
@@ -147,8 +147,7 @@ add_tls_transports(const cfg_obj_t *transportlist, dns_transport_list_t *list) {
                tlsid = cfg_obj_asstring(cfg_map_getname(tls));
 
                if (!strcmp(tlsid, "ephemeral")) {
-                       result = ISC_R_UNEXPECTEDTOKEN;
-                       goto failure;
+                       CHECK(ISC_R_UNEXPECTEDTOKEN);
                }
 
                create_name(tlsid, tlsname);
@@ -176,7 +175,7 @@ add_tls_transports(const cfg_obj_t *transportlist, dns_transport_list_t *list) {
        }
 
        return ISC_R_SUCCESS;
-failure:
+cleanup:
        cfg_obj_log(tls, ISC_LOG_ERROR, "configuring tls '%s': %s", tlsid,
                    isc_result_totext(result));
 
@@ -217,7 +216,7 @@ transport_list_add_ephemeral(dns_transport_list_t *list) {
        dns_transport_set_tlsname(transport, "ephemeral");
 
        return;
-failure:
+cleanup:
        RUNTIME_CHECK(result == ISC_R_SUCCESS);
 }
 
@@ -232,10 +231,7 @@ named_transports_fromconfig(const cfg_obj_t *config, const cfg_obj_t *vconfig,
        transport_list_add_ephemeral(list);
 
        if (config != NULL) {
-               result = transport_list_fromconfig(config, list);
-               if (result != ISC_R_SUCCESS) {
-                       goto failure;
-               }
+               CHECK(transport_list_fromconfig(config, list));
        }
 
        if (vconfig != NULL) {
@@ -245,7 +241,7 @@ named_transports_fromconfig(const cfg_obj_t *config, const cfg_obj_t *vconfig,
 
        *listp = list;
        return ISC_R_SUCCESS;
-failure:
+cleanup:
        dns_transport_list_detach(&list);
        return result;
 }
index 9133bc750ecc726c760c089577c3e7408c0868bb..1b758cb323b1677404d64ab51b5959bb506f1e9a 100644 (file)
@@ -38,7 +38,7 @@ add_initial_keys(const cfg_obj_t *list, dns_tsigkeyring_t *ring,
        const char *keyid = NULL;
        unsigned char *secret = NULL;
        int secretalloc = 0;
-       isc_result_t ret;
+       isc_result_t result;
 
        CFG_LIST_FOREACH(list, element) {
                const cfg_obj_t *algobj = NULL;
@@ -67,11 +67,8 @@ add_initial_keys(const cfg_obj_t *list, dns_tsigkeyring_t *ring,
                 */
                isc_buffer_constinit(&keynamesrc, keyid, strlen(keyid));
                isc_buffer_add(&keynamesrc, strlen(keyid));
-               ret = dns_name_fromtext(keyname, &keynamesrc, dns_rootname,
-                                       DNS_NAME_DOWNCASE);
-               if (ret != ISC_R_SUCCESS) {
-                       goto failure;
-               }
+               CHECK(dns_name_fromtext(keyname, &keynamesrc, dns_rootname,
+                                       DNS_NAME_DOWNCASE));
 
                /*
                 * Create the algorithm.
@@ -84,31 +81,27 @@ add_initial_keys(const cfg_obj_t *list, dns_tsigkeyring_t *ring,
                                    "key '%s': has a "
                                    "unsupported algorithm '%s'",
                                    keyid, algstr);
-                       ret = DNS_R_BADALG;
-                       goto failure;
+                       CHECK(DNS_R_BADALG);
                }
 
                secretstr = cfg_obj_asstring(secretobj);
                secretalloc = secretlen = strlen(secretstr) * 3 / 4;
                secret = isc_mem_get(mctx, secretlen);
                isc_buffer_init(&secretbuf, secret, secretlen);
-               ret = isc_base64_decodestring(secretstr, &secretbuf);
-               if (ret != ISC_R_SUCCESS) {
-                       goto failure;
-               }
+               CHECK(isc_base64_decodestring(secretstr, &secretbuf));
                secretlen = isc_buffer_usedlength(&secretbuf);
 
-               ret = dns_tsigkey_create(keyname, alg, secret, secretlen, mctx,
-                                        &tsigkey);
+               result = dns_tsigkey_create(keyname, alg, secret, secretlen,
+                                           mctx, &tsigkey);
                isc_mem_put(mctx, secret, secretalloc);
-               if (ret == ISC_R_SUCCESS) {
-                       ret = dns_tsigkeyring_add(ring, tsigkey);
+               if (result == ISC_R_SUCCESS) {
+                       result = dns_tsigkeyring_add(ring, tsigkey);
                }
-               if (ret != ISC_R_SUCCESS) {
+               if (result != ISC_R_SUCCESS) {
                        if (tsigkey != NULL) {
                                dns_tsigkey_detach(&tsigkey);
                        }
-                       goto failure;
+                       goto cleanup;
                }
                /*
                 * Set digest bits.
@@ -119,13 +112,13 @@ add_initial_keys(const cfg_obj_t *list, dns_tsigkeyring_t *ring,
 
        return ISC_R_SUCCESS;
 
-failure:
+cleanup:
        if (secret != NULL) {
                isc_mem_put(mctx, secret, secretalloc);
        }
        cfg_obj_log(key, ISC_LOG_ERROR, "configuring key '%s': %s", keyid,
-                   isc_result_totext(ret));
-       return ret;
+                   isc_result_totext(result));
+       return result;
 }
 
 isc_result_t
@@ -159,16 +152,13 @@ named_tsigkeyring_fromconfig(const cfg_obj_t *config, const cfg_obj_t *vconfig,
                if (result != ISC_R_SUCCESS) {
                        continue;
                }
-               result = add_initial_keys(keylist, ring, mctx);
-               if (result != ISC_R_SUCCESS) {
-                       goto failure;
-               }
+               CHECK(add_initial_keys(keylist, ring, mctx));
        }
 
        *ringp = ring;
        return ISC_R_SUCCESS;
 
-failure:
+cleanup:
        dns_tsigkeyring_detach(&ring);
        return result;
 }
index 9ad15e054797ad1becb2d5bad87c74eb844181d4..f557ec751429e1bdcba3332967745ba729eb5141 100644 (file)
@@ -369,8 +369,7 @@ configure_zone_ssutable(const cfg_obj_t *zconfig, const cfg_obj_t *tconfig,
                                      "failed to enable auto DDNS policy "
                                      "for zone %s: session key not found",
                                      zname);
-                       result = ISC_R_NOTFOUND;
-                       goto cleanup;
+                       CHECK(ISC_R_NOTFOUND);
                }
 
                dns_ssutable_addrule(
@@ -609,8 +608,7 @@ configure_staticstub(const cfg_obj_t *zconfig, const cfg_obj_t *tconfig,
                              "No NS record is configured for a "
                              "static-stub zone '%s'",
                              zname);
-               result = ISC_R_FAILURE;
-               goto cleanup;
+               CHECK(ISC_R_FAILURE);
        }
 
        /*
index 318c8dd96ab4ef0dd9af6903edf9bd1b63dc0926..cc8e5b4cd628dc422a196635d6c59929396a32ac 100644 (file)
@@ -569,16 +569,10 @@ read_sessionkey(isc_mem_t *mctx) {
                return ISC_R_FILENOTFOUND;
        }
 
-       result = cfg_parse_file(mctx, keyfile, &cfg_type_sessionkey, 0,
-                               &sessionkey);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(cfg_parse_file(mctx, keyfile, &cfg_type_sessionkey, 0,
+                            &sessionkey));
 
-       result = cfg_map_get(sessionkey, "key", &key);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(cfg_map_get(sessionkey, "key", &key));
 
        (void)cfg_map_get(key, "secret", &secretobj);
        (void)cfg_map_get(key, "algorithm", &algorithmobj);
index db087895bea0112012e6afc4868703f50568e4e1..e4ab5a54c9a25f91015c2f7a11ae589eab5a8bb4 100644 (file)
@@ -78,8 +78,7 @@ parse_params(isc_mem_t *mctx, int argc, char **argv, dns_name_t *z1,
        if (argc != 2) {
                log_error("exactly two parameters "
                          "(absolute zone names) are required");
-               result = ISC_R_FAILURE;
-               goto cleanup;
+               CHECK(ISC_R_FAILURE);
        }
        result = dns_name_fromstring(z1, argv[0], dns_rootname, 0, mctx);
        if (result != ISC_R_SUCCESS) {
index c18da012e28ad1b184ebbcd43015cdbb4ba5f9f5..3cdbd34df697be943a89ce53ed53b72a07b86058 100644 (file)
@@ -177,10 +177,7 @@ main(int argc, char **argv) {
                goto cleanup;
        }
 
-       result = loadjournal(olddb, journal);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(loadjournal(olddb, journal));
 
        result = dns_db_getsoaserial(olddb, NULL, &s2);
        RUNTIME_CHECK(result == ISC_R_SUCCESS);
index 5f6069266e30537de8fec7e1aa9efeeef6755b5a..236c789514209c0f080b443cd250fdfb0d5de50b 100644 (file)
@@ -156,25 +156,13 @@ LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
        isc_buffer_add(&buffer, size);
        isc_buffer_setactive(&buffer, size);
 
-       result = parse_message(&buffer, &message);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(parse_message(&buffer, &message));
 
-       result = print_message(message);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(print_message(message));
 
-       result = render_message(&message);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(render_message(&message));
 
-       result = print_message(message);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(print_message(message));
 
 cleanup:
        if (message != NULL) {
index 8f2988e2c163b7caf3cb647c018141bf38e7173f..a8ee8949b14be4be645f706673ba623fe30f6a4c 100644 (file)
@@ -79,10 +79,7 @@ LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
 
        RUNTIME_CHECK(isc_lex_openbuffer(lex, &inbuf) == ISC_R_SUCCESS);
 
-       result = isc_lex_gettoken(lex, options | ISC_LEXOPT_NUMBER, &token);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(isc_lex_gettoken(lex, options | ISC_LEXOPT_NUMBER, &token));
        if (token.type == isc_tokentype_eof) {
                goto cleanup;
        }
@@ -98,18 +95,12 @@ LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
                }
                rdclass = (dns_rdataclass_t)token.value.as_ulong;
        } else if (token.type == isc_tokentype_string) {
-               result = dns_rdataclass_fromtext(&rdclass,
-                                                &token.value.as_textregion);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(dns_rdataclass_fromtext(&rdclass,
+                                             &token.value.as_textregion));
        } else {
                goto cleanup;
        }
-       result = isc_lex_gettoken(lex, options | ISC_LEXOPT_NUMBER, &token);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(isc_lex_gettoken(lex, options | ISC_LEXOPT_NUMBER, &token));
        if (token.type == isc_tokentype_eol) {
                goto cleanup;
        }
@@ -126,11 +117,8 @@ LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
                }
                rdtype = (dns_rdatatype_t)token.value.as_ulong;
        } else if (token.type == isc_tokentype_string) {
-               result = dns_rdatatype_fromtext(&rdtype,
-                                               &token.value.as_textregion);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(dns_rdatatype_fromtext(&rdtype,
+                                            &token.value.as_textregion));
        } else {
                goto cleanup;
        }
index 0fbce6c372edb8250d29c8463284ea2cf61e47a6..f93f7255106a5b2c761cdddcc441131eb8431eec 100644 (file)
@@ -184,11 +184,7 @@ dns_cache_create(dns_rdataclass_t rdclass, const char *cachename,
        /*
         * Create the database
         */
-       result = cache_create_db(cache, &cache->db, &cache->tmctx,
-                                &cache->hmctx);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(cache_create_db(cache, &cache->db, &cache->tmctx, &cache->hmctx));
 
        *cachep = cache;
        return ISC_R_SUCCESS;
@@ -398,10 +394,7 @@ cleartree(dns_db_t *db, const dns_name_t *name) {
 
        nodename = dns_fixedname_initname(&fnodename);
 
-       result = dns_db_createiterator(db, 0, &iter);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_db_createiterator(db, 0, &iter));
 
        result = dns_dbiterator_seek(iter, name);
        if (result == DNS_R_PARTIALMATCH) {
index fa0724db42e04846e626ffc7ceab25f9ad729a39..fb7b284dcb5ad45928ec294851d7a8e726be048d 100644 (file)
@@ -1214,20 +1214,14 @@ catz_process_coo(dns_catz_zone_t *catz, dns_label_t *mhash,
        }
 
        if (dns_name_countlabels(&ptr.ptr) == 0) {
-               result = ISC_R_FAILURE;
-               goto cleanup;
+               CHECK(ISC_R_FAILURE);
        }
 
-       result = isc_ht_find(catz->entries, mhash->base, mhash->length,
-                            (void **)&entry);
-       if (result != ISC_R_SUCCESS) {
-               /* The entry was not found .*/
-               goto cleanup;
-       }
+       CHECK(isc_ht_find(catz->entries, mhash->base, mhash->length,
+                         (void **)&entry));
 
        if (dns_name_countlabels(&entry->name) == 0) {
-               result = ISC_R_FAILURE;
-               goto cleanup;
+               CHECK(ISC_R_FAILURE);
        }
 
        catz_coo_add(catz, entry, &ptr.ptr);
@@ -1333,31 +1327,20 @@ catz_process_version(dns_catz_zone_t *catz, dns_rdataset_t *value) {
                return result;
        }
 
-       result = dns_rdata_txt_first(&rdatatxt);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_rdata_txt_first(&rdatatxt));
 
-       result = dns_rdata_txt_current(&rdatatxt, &rdatastr);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_rdata_txt_current(&rdatatxt, &rdatastr));
 
        result = dns_rdata_txt_next(&rdatatxt);
        if (result != ISC_R_NOMORE) {
-               result = ISC_R_FAILURE;
-               goto cleanup;
+               CHECK(ISC_R_FAILURE);
        }
        if (rdatastr.length > 15) {
-               result = ISC_R_BADNUMBER;
-               goto cleanup;
+               CHECK(ISC_R_BADNUMBER);
        }
        memmove(t, rdatastr.data, rdatastr.length);
        t[rdatastr.length] = 0;
-       result = isc_parse_uint32(&tversion, t, 10);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(isc_parse_uint32(&tversion, t, 10));
        catz->version = tversion;
        result = ISC_R_SUCCESS;
 
@@ -1883,16 +1866,10 @@ dns_catz_generate_masterfilename(dns_catz_zone_t *catz, dns_catz_entry_t *entry,
 
        isc_buffer_putstr(tbuf, catz->catzs->view->name);
        isc_buffer_putstr(tbuf, "_");
-       result = dns_name_totext(&catz->name, DNS_NAME_OMITFINALDOT, tbuf);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_name_totext(&catz->name, DNS_NAME_OMITFINALDOT, tbuf));
 
        isc_buffer_putstr(tbuf, "_");
-       result = dns_name_totext(&entry->name, DNS_NAME_OMITFINALDOT, tbuf);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_name_totext(&entry->name, DNS_NAME_OMITFINALDOT, tbuf));
 
        /*
         * Search for slash and other special characters in the view and
@@ -1913,10 +1890,7 @@ dns_catz_generate_masterfilename(dns_catz_zone_t *catz, dns_catz_entry_t *entry,
                rlen += strlen(entry->opts.zonedir) + 1;
        }
 
-       result = isc_buffer_reserve(*buffer, (unsigned int)rlen);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(isc_buffer_reserve(*buffer, (unsigned int)rlen));
 
        if (entry->opts.zonedir != NULL) {
                isc_buffer_putstr(*buffer, entry->opts.zonedir);
@@ -1930,16 +1904,10 @@ dns_catz_generate_masterfilename(dns_catz_zone_t *catz, dns_catz_entry_t *entry,
                unsigned int digestlen;
 
                /* we can do that because digest string < 2 * DNS_NAME */
-               result = isc_md(ISC_MD_SHA256, r.base, r.length, digest,
-                               &digestlen);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
-               result = digest2hex(digest, digestlen, (char *)r.base,
-                                   ISC_SHA256_DIGESTLENGTH * 2 + 1);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(isc_md(ISC_MD_SHA256, r.base, r.length, digest,
+                            &digestlen));
+               CHECK(digest2hex(digest, digestlen, (char *)r.base,
+                                ISC_SHA256_DIGESTLENGTH * 2 + 1));
                isc_buffer_putstr(*buffer, (char *)r.base);
        } else {
                isc_buffer_copyregion(*buffer, &r);
@@ -2002,8 +1970,7 @@ dns_catz_generate_zonecfg(dns_catz_zone_t *catz, dns_catz_entry_t *entry,
                                      "catz: zone '%s' uses an invalid primary "
                                      "(no IP address assigned)",
                                      zname);
-                       result = ISC_R_FAILURE;
-                       goto cleanup;
+                       CHECK(ISC_R_FAILURE);
                }
                isc_netaddr_fromsockaddr(&netaddr,
                                         &entry->opts.masters.addrs[i]);
@@ -2018,30 +1985,21 @@ dns_catz_generate_zonecfg(dns_catz_zone_t *catz, dns_catz_entry_t *entry,
 
                if (entry->opts.masters.keys[i] != NULL) {
                        isc_buffer_putstr(buffer, " key ");
-                       result = dns_name_totext(entry->opts.masters.keys[i],
-                                                DNS_NAME_OMITFINALDOT, buffer);
-                       if (result != ISC_R_SUCCESS) {
-                               goto cleanup;
-                       }
+                       CHECK(dns_name_totext(entry->opts.masters.keys[i],
+                                             DNS_NAME_OMITFINALDOT, buffer));
                }
 
                if (entry->opts.masters.tlss[i] != NULL) {
                        isc_buffer_putstr(buffer, " tls ");
-                       result = dns_name_totext(entry->opts.masters.tlss[i],
-                                                DNS_NAME_OMITFINALDOT, buffer);
-                       if (result != ISC_R_SUCCESS) {
-                               goto cleanup;
-                       }
+                       CHECK(dns_name_totext(entry->opts.masters.tlss[i],
+                                             DNS_NAME_OMITFINALDOT, buffer));
                }
                isc_buffer_putstr(buffer, "; ");
        }
        isc_buffer_putstr(buffer, "}; ");
        if (!entry->opts.in_memory) {
                isc_buffer_putstr(buffer, "file \"");
-               result = dns_catz_generate_masterfilename(catz, entry, &buffer);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(dns_catz_generate_masterfilename(catz, entry, &buffer));
                isc_buffer_putstr(buffer, "\"; ");
        }
        if (entry->opts.allow_query != NULL) {
@@ -2140,13 +2098,9 @@ dns_catz_dbupdate_callback(dns_db_t *db, void *fn_arg) {
 
        LOCK(&catzs->lock);
        if (catzs->zones == NULL) {
-               result = ISC_R_SHUTTINGDOWN;
-               goto cleanup;
-       }
-       result = isc_ht_find(catzs->zones, r.base, r.length, (void **)&catz);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
+               CHECK(ISC_R_SHUTTINGDOWN);
        }
+       CHECK(isc_ht_find(catzs->zones, r.base, r.length, (void **)&catz));
 
        /* New zone came as AXFR */
        if (catz->db != NULL && catz->db != db) {
index bca416c480a8fc1c36f562edf7acbee7c18ec7dd..abfa407857b6047790ec8834458aa74d9aec3fe6 100644 (file)
@@ -142,17 +142,11 @@ setsourceports(isc_mem_t *mctx, dns_dispatchmgr_t *manager) {
        isc_result_t result;
 
        isc_portset_create(mctx, &v4portset);
-       result = isc_net_getudpportrange(AF_INET, &udpport_low, &udpport_high);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(isc_net_getudpportrange(AF_INET, &udpport_low, &udpport_high));
        isc_portset_addrange(v4portset, udpport_low, udpport_high);
 
        isc_portset_create(mctx, &v6portset);
-       result = isc_net_getudpportrange(AF_INET6, &udpport_low, &udpport_high);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(isc_net_getudpportrange(AF_INET6, &udpport_low, &udpport_high));
        isc_portset_addrange(v6portset, udpport_low, udpport_high);
 
        result = dns_dispatchmgr_setavailports(manager, v4portset, v6portset);
@@ -900,17 +894,11 @@ startresolve(dns_client_t *client, const dns_name_t *name,
                .link = ISC_LINK_INITIALIZER,
        };
 
-       result = getrdataset(mctx, &rdataset);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(getrdataset(mctx, &rdataset));
        rctx->rdataset = rdataset;
 
        if (want_dnssec) {
-               result = getrdataset(mctx, &sigrdataset);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(getrdataset(mctx, &sigrdataset));
        }
        rctx->sigrdataset = sigrdataset;
 
index 452a6ee90f9fb2e14e29b9f62f3e56a1a9b8e8c8..48f563f6c7e8f5f002f53a656ace6e3774f08a28 100644 (file)
@@ -203,20 +203,17 @@ dns_dlzcreate(isc_mem_t *mctx, const char *dlzname, const char *drivername,
        /* Create a new database using implementation 'drivername'. */
        result = ((impinfo->methods->create)(mctx, dlzname, argc, argv,
                                             impinfo->driverarg, &db->dbdata));
-
        RWUNLOCK(&dlz_implock, isc_rwlocktype_read);
-       /* mark the DLZ driver as valid */
-       if (result != ISC_R_SUCCESS) {
-               goto failure;
-       }
+       CHECK(result);
 
+       /* Mark the DLZ driver as valid */
        db->magic = DNS_DLZ_MAGIC;
        isc_mem_attach(mctx, &db->mctx);
        isc_log_write(DNS_LOGCATEGORY_DATABASE, DNS_LOGMODULE_DLZ,
                      ISC_LOG_DEBUG(2), "DLZ driver loaded successfully.");
        *dbp = db;
        return ISC_R_SUCCESS;
-failure:
+cleanup:
        isc_log_write(DNS_LOGCATEGORY_DATABASE, DNS_LOGMODULE_DLZ,
                      ISC_LOG_ERROR, "DLZ driver failed to load.");
 
@@ -402,11 +399,8 @@ dns_dlz_writeablezone(dns_view_t *view, dns_dlzdb_t *dlzdb,
        isc_buffer_constinit(&buffer, zone_name, strlen(zone_name));
        isc_buffer_add(&buffer, strlen(zone_name));
        dns_fixedname_init(&fixorigin);
-       result = dns_name_fromtext(dns_fixedname_name(&fixorigin), &buffer,
-                                  dns_rootname, 0);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_name_fromtext(dns_fixedname_name(&fixorigin), &buffer,
+                               dns_rootname, 0));
        origin = dns_fixedname_name(&fixorigin);
 
        if (!dlzdb->search) {
@@ -423,8 +417,7 @@ dns_dlz_writeablezone(dns_view_t *view, dns_dlzdb_t *dlzdb,
        result = dns_view_findzone(view, origin, DNS_ZTFIND_EXACT, &dupzone);
        if (result == ISC_R_SUCCESS) {
                dns_zone_detach(&dupzone);
-               result = ISC_R_EXISTS;
-               goto cleanup;
+               CHECK(ISC_R_EXISTS);
        }
        INSIST(dupzone == NULL);
 
@@ -440,10 +433,7 @@ dns_dlz_writeablezone(dns_view_t *view, dns_dlzdb_t *dlzdb,
        }
        dns_zone_setssutable(zone, dlzdb->ssutable);
 
-       result = dlzdb->configure_callback(view, dlzdb, zone);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dlzdb->configure_callback(view, dlzdb, zone));
 
        result = dns_view_addzone(view, zone);
 
index 35a935e5acd16b37e58955f9e1861454e7c8bccc..f42c0c1ec187f2b0545dd86e49f5777e5ce758ac 100644 (file)
@@ -2183,10 +2183,7 @@ pushfile(const char *master_file, dns_name_t *origin, dns_loadctx_t *lctx) {
                newctx->drop = ictx->drop;
        }
 
-       result = (lctx->openfile)(lctx, master_file);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK((lctx->openfile)(lctx, master_file));
        newctx->parent = ictx;
        lctx->inc = newctx;
 
@@ -2400,8 +2397,7 @@ load_raw(dns_loadctx_t *lctx) {
                         sizeof(uint16_t) + sizeof(uint16_t) +
                         sizeof(uint32_t) + sizeof(uint32_t);
                if (totallen < minlen) {
-                       result = ISC_R_RANGE;
-                       goto cleanup;
+                       CHECK(ISC_R_RANGE);
                }
                totallen -= sizeof(totallen);
 
@@ -2428,10 +2424,7 @@ load_raw(dns_loadctx_t *lctx) {
                         */
                        readlen = totallen;
                }
-               result = isc_stdio_read(target.base, 1, readlen, lctx->f, NULL);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(isc_stdio_read(target.base, 1, readlen, lctx->f, NULL));
                isc_buffer_add(&target, (unsigned int)readlen);
                totallen -= (uint32_t)readlen;
 
@@ -2439,42 +2432,30 @@ load_raw(dns_loadctx_t *lctx) {
                dns_rdatalist_init(&rdatalist);
                rdatalist.rdclass = isc_buffer_getuint16(&target);
                if (lctx->zclass != rdatalist.rdclass) {
-                       result = DNS_R_BADCLASS;
-                       goto cleanup;
+                       CHECK(DNS_R_BADCLASS);
                }
                rdatalist.type = isc_buffer_getuint16(&target);
                rdatalist.covers = isc_buffer_getuint16(&target);
                rdatalist.ttl = isc_buffer_getuint32(&target);
                rdcount = isc_buffer_getuint32(&target);
                if (rdcount == 0 || rdcount > 0xffff) {
-                       result = ISC_R_RANGE;
-                       goto cleanup;
+                       CHECK(ISC_R_RANGE);
                }
                INSIST(isc_buffer_consumedlength(&target) <= readlen);
 
                /* Owner name: length followed by name */
-               result = read_and_check(sequential_read, &target,
-                                       sizeof(namelen), lctx->f, &totallen);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(read_and_check(sequential_read, &target, sizeof(namelen),
+                                    lctx->f, &totallen));
                namelen = isc_buffer_getuint16(&target);
                if (namelen > sizeof(namebuf)) {
-                       result = ISC_R_RANGE;
-                       goto cleanup;
+                       CHECK(ISC_R_RANGE);
                }
 
-               result = read_and_check(sequential_read, &target, namelen,
-                                       lctx->f, &totallen);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(read_and_check(sequential_read, &target, namelen, lctx->f,
+                                    &totallen));
 
                isc_buffer_setactive(&target, (unsigned int)namelen);
-               result = dns_name_fromwire(name, &target, dctx, NULL);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(dns_name_fromwire(name, &target, dctx, NULL));
 
                if ((lctx->options & DNS_MASTER_CHECKTTL) != 0 &&
                    rdatalist.ttl > lctx->maxttl)
@@ -2484,8 +2465,7 @@ load_raw(dns_loadctx_t *lctx) {
                                           "TTL %d exceeds configured "
                                           "max-zone-ttl %d",
                                           rdatalist.ttl, lctx->maxttl);
-                       result = ISC_R_RANGE;
-                       goto cleanup;
+                       CHECK(ISC_R_RANGE);
                }
 
                /* Rdata contents. */
@@ -2533,20 +2513,14 @@ load_raw(dns_loadctx_t *lctx) {
                        }
 
                        /* rdata length */
-                       result = read_and_check(sequential_read, &target,
-                                               sizeof(rdlen), lctx->f,
-                                               &totallen);
-                       if (result != ISC_R_SUCCESS) {
-                               goto cleanup;
-                       }
+                       CHECK(read_and_check(sequential_read, &target,
+                                            sizeof(rdlen), lctx->f,
+                                            &totallen));
                        rdlen = isc_buffer_getuint16(&target);
 
                        /* rdata */
-                       result = read_and_check(sequential_read, &target, rdlen,
-                                               lctx->f, &totallen);
-                       if (result != ISC_R_SUCCESS) {
-                               goto cleanup;
-                       }
+                       CHECK(read_and_check(sequential_read, &target, rdlen,
+                                            lctx->f, &totallen));
                        isc_buffer_setactive(&target, (unsigned int)rdlen);
                        /*
                         * It is safe to have the source active region and
@@ -2556,12 +2530,9 @@ load_raw(dns_loadctx_t *lctx) {
                         */
                        isc_buffer_init(&buf, isc_buffer_current(&target),
                                        (unsigned int)rdlen);
-                       result = dns_rdata_fromwire(
-                               &rdata[i], rdatalist.rdclass, rdatalist.type,
-                               &target, dctx, &buf);
-                       if (result != ISC_R_SUCCESS) {
-                               goto cleanup;
-                       }
+                       CHECK(dns_rdata_fromwire(&rdata[i], rdatalist.rdclass,
+                                                rdatalist.type, &target, dctx,
+                                                &buf));
                        ISC_LIST_APPEND(rdatalist.rdata, &rdata[i], link);
                }
 
@@ -2571,8 +2542,7 @@ load_raw(dns_loadctx_t *lctx) {
                 * or malformed data.
                 */
                if (isc_buffer_remaininglength(&target) != 0 || totallen != 0) {
-                       result = ISC_R_RANGE;
-                       goto cleanup;
+                       CHECK(ISC_R_RANGE);
                }
 
                ISC_LIST_APPEND(head, &rdatalist, link);
@@ -2635,10 +2605,7 @@ dns_master_loadfile(const char *master_file, dns_name_t *top,
 
        lctx->maxttl = maxttl;
 
-       result = (lctx->openfile)(lctx, master_file);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK((lctx->openfile)(lctx, master_file));
 
        result = (lctx->load)(lctx);
        INSIST(result != DNS_R_CONTINUE);
@@ -2729,10 +2696,7 @@ dns_master_loadbuffer(isc_buffer_t *buffer, dns_name_t *top, dns_name_t *origin,
        loadctx_create(dns_masterformat_text, mctx, options, 0, top, zclass,
                       origin, callbacks, NULL, NULL, NULL, NULL, NULL, &lctx);
 
-       result = isc_lex_openbuffer(lctx->lex, buffer);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(isc_lex_openbuffer(lctx->lex, buffer));
 
        result = (lctx->load)(lctx);
        INSIST(result != DNS_R_CONTINUE);
index e86f76396d2ebb75a25a23b4269c300f59425d20..ca5704204bd27f229f2b82b34de6a096d9773082 100644 (file)
@@ -1571,10 +1571,7 @@ dumpctx_create(isc_mem_t *mctx, dns_db_t *db, dns_dbversion_t *version,
        } else {
                options = 0;
        }
-       result = dns_db_createiterator(dctx->db, options, &dctx->dbiter);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_db_createiterator(dctx->db, options, &dctx->dbiter));
 
        isc_mutex_init(&dctx->lock);
        isc_mem_attach(mctx, &dctx->mctx);
@@ -1795,10 +1792,7 @@ opentmp(isc_mem_t *mctx, const char *file, char **tempp, FILE **fp) {
        tempnamelen = strlen(file) + 20;
        tempname = isc_mem_allocate(mctx, tempnamelen);
 
-       result = isc_file_mktemplate(file, tempname, tempnamelen);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(isc_file_mktemplate(file, tempname, tempnamelen));
 
        result = isc_file_openunique(tempname, &f);
        if (result != ISC_R_SUCCESS) {
@@ -1882,11 +1876,8 @@ dns_master_dump(isc_mem_t *mctx, dns_db_t *db, dns_dbversion_t *version,
                return result;
        }
 
-       result = dumpctx_create(mctx, db, version, style, f, &dctx, format,
-                               header);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dumpctx_create(mctx, db, version, style, f, &dctx, format,
+                            header));
 
        result = dumptostream(dctx);
        INSIST(result != DNS_R_CONTINUE);
index 4b094b04cbabe69e9d55cac3d70fcedfe51b1ce0..bd68f18a6fae80cff44e464655c64245c2d505c9 100644 (file)
@@ -965,10 +965,7 @@ getquestions(isc_buffer_t *source, dns_message_t *msg, dns_decompress_t dctx,
                 */
                isc_buffer_remainingregion(source, &r);
                isc_buffer_setactive(source, r.length);
-               result = getname(name, source, msg, dctx);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(getname(name, source, msg, dctx));
 
                ISC_LIST_APPEND(*section, name, link);
 
@@ -979,8 +976,7 @@ getquestions(isc_buffer_t *source, dns_message_t *msg, dns_decompress_t dctx,
                 */
                isc_buffer_remainingregion(source, &r);
                if (r.length < 4) {
-                       result = ISC_R_UNEXPECTEDEND;
-                       goto cleanup;
+                       CHECK(ISC_R_UNEXPECTEDEND);
                }
                rdtype = isc_buffer_getuint16(source);
                rdclass = isc_buffer_getuint16(source);
@@ -1104,10 +1100,7 @@ getsection(isc_buffer_t *source, dns_message_t *msg, dns_decompress_t dctx,
                 */
                isc_buffer_remainingregion(source, &r);
                isc_buffer_setactive(source, r.length);
-               result = getname(name, source, msg, dctx);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(getname(name, source, msg, dctx));
 
                /*
                 * Get type, class, ttl, and rdatalen.  Verify that at least
@@ -1116,8 +1109,7 @@ getsection(isc_buffer_t *source, dns_message_t *msg, dns_decompress_t dctx,
                 */
                isc_buffer_remainingregion(source, &r);
                if (r.length < 2 + 2 + 4 + 2) {
-                       result = ISC_R_UNEXPECTEDEND;
-                       goto cleanup;
+                       CHECK(ISC_R_UNEXPECTEDEND);
                }
                rdtype = isc_buffer_getuint16(source);
                rdclass = isc_buffer_getuint16(source);
@@ -1226,8 +1218,7 @@ getsection(isc_buffer_t *source, dns_message_t *msg, dns_decompress_t dctx,
                rdatalen = isc_buffer_getuint16(source);
                r.length -= (2 + 2 + 4 + 2);
                if (r.length < rdatalen) {
-                       result = ISC_R_UNEXPECTEDEND;
-                       goto cleanup;
+                       CHECK(ISC_R_UNEXPECTEDEND);
                }
 
                /*
@@ -1241,8 +1232,7 @@ getsection(isc_buffer_t *source, dns_message_t *msg, dns_decompress_t dctx,
                    update(sectionid, rdclass))
                {
                        if (rdatalen != 0) {
-                               result = DNS_R_FORMERR;
-                               goto cleanup;
+                               CHECK(DNS_R_FORMERR);
                        }
                        /*
                         * When the rdata is empty, the data pointer is
@@ -1309,8 +1299,7 @@ getsection(isc_buffer_t *source, dns_message_t *msg, dns_decompress_t dctx,
                if (rdtype == dns_rdatatype_nsec3 &&
                    !dns_rdata_checkowner(name, msg->rdclass, rdtype, false))
                {
-                       result = DNS_R_BADOWNERNAME;
-                       goto cleanup;
+                       CHECK(DNS_R_BADOWNERNAME);
                }
 
                /*
@@ -2666,10 +2655,7 @@ dns_message_setopt(dns_message_t *msg) {
 
        msgresetopt(msg);
 
-       result = dns_rdataset_first(opt);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_rdataset_first(opt));
        dns_rdataset_current(opt, &rdata);
        msg->opt_reserved = 11 + rdata.length;
        result = dns_message_renderreserve(msg, msg->opt_reserved);
@@ -3628,8 +3614,7 @@ render_zoneversion(dns_message_t *msg, isc_buffer_t *optbuf,
                                        if (isc_buffer_availablelength(target) <
                                            1)
                                        {
-                                               result = ISC_R_NOSPACE;
-                                               goto cleanup;
+                                               CHECK(ISC_R_NOSPACE);
                                        }
                                        isc_buffer_putmem(target, &data[i], 1);
                                } else {
@@ -3755,11 +3740,8 @@ dns_message_pseudosectiontoyaml(dns_message_t *msg, dns_pseudosection_t section,
                        switch (optcode) {
                        case DNS_OPT_LLQ:
                                if (optlen == 18U) {
-                                       result = render_llq(&optbuf, msg, style,
-                                                           target);
-                                       if (result != ISC_R_SUCCESS) {
-                                               goto cleanup;
-                                       }
+                                       CHECK(render_llq(&optbuf, msg, style,
+                                                        target));
                                        ADD_STRING(target, "\n");
                                        continue;
                                }
@@ -3777,11 +3759,8 @@ dns_message_pseudosectiontoyaml(dns_message_t *msg, dns_pseudosection_t section,
                                        ADD_STRING(target, buf);
 
                                        ADD_STRING(target, " # ");
-                                       result = dns_ttl_totext(secs, true,
-                                                               true, target);
-                                       if (result != ISC_R_SUCCESS) {
-                                               goto cleanup;
-                                       }
+                                       CHECK(dns_ttl_totext(secs, true, true,
+                                                            target));
                                        ADD_STRING(target, "\n");
 
                                        if (optlen == 8U) {
@@ -3795,12 +3774,9 @@ dns_message_pseudosectiontoyaml(dns_message_t *msg, dns_pseudosection_t section,
                                                ADD_STRING(target, buf);
 
                                                ADD_STRING(target, " # ");
-                                               result = dns_ttl_totext(
-                                                       key, true, true,
-                                                       target);
-                                               if (result != ISC_R_SUCCESS) {
-                                                       goto cleanup;
-                                               }
+                                               CHECK(dns_ttl_totext(key, true,
+                                                                    true,
+                                                                    target));
                                                ADD_STRING(target, "\n");
                                        }
                                        continue;
@@ -3829,11 +3805,8 @@ dns_message_pseudosectiontoyaml(dns_message_t *msg, dns_pseudosection_t section,
                                        snprintf(buf, sizeof(buf), " %u", secs);
                                        ADD_STRING(target, buf);
                                        ADD_STRING(target, " # ");
-                                       result = dns_ttl_totext(secs, true,
-                                                               true, target);
-                                       if (result != ISC_R_SUCCESS) {
-                                               goto cleanup;
-                                       }
+                                       CHECK(dns_ttl_totext(secs, true, true,
+                                                            target));
                                        ADD_STRING(target, "\n");
                                        continue;
                                }
@@ -3920,11 +3893,8 @@ dns_message_pseudosectiontoyaml(dns_message_t *msg, dns_pseudosection_t section,
                                if (optlen >= 2U) {
                                        isc_buffer_t zonebuf = optbuf;
                                        isc_buffer_setactive(&zonebuf, optlen);
-                                       result = render_zoneversion(
-                                               msg, &zonebuf, style, target);
-                                       if (result != ISC_R_SUCCESS) {
-                                               goto cleanup;
-                                       }
+                                       CHECK(render_zoneversion(
+                                               msg, &zonebuf, style, target));
                                        isc_buffer_forward(&optbuf, optlen);
                                        ADD_STRING(target, "\n");
                                        continue;
@@ -4221,19 +4191,13 @@ dns_message_pseudosectiontotext(dns_message_t *msg, dns_pseudosection_t section,
                                                ADD_STRING(target, buf);
                                        }
                                        ADD_STRING(target, " (");
-                                       result = dns_ttl_totext(secs, true,
-                                                               true, target);
-                                       if (result != ISC_R_SUCCESS) {
-                                               goto cleanup;
-                                       }
+                                       CHECK(dns_ttl_totext(secs, true, true,
+                                                            target));
                                        if (optlen == 8U) {
                                                ADD_STRING(target, "/");
-                                               result = dns_ttl_totext(
-                                                       key, true, true,
-                                                       target);
-                                               if (result != ISC_R_SUCCESS) {
-                                                       goto cleanup;
-                                               }
+                                               CHECK(dns_ttl_totext(key, true,
+                                                                    true,
+                                                                    target));
                                        }
                                        ADD_STRING(target, ")\n");
                                        continue;
@@ -4365,11 +4329,8 @@ dns_message_pseudosectiontotext(dns_message_t *msg, dns_pseudosection_t section,
                                if (optlen >= 2U) {
                                        isc_buffer_t zonebuf = optbuf;
                                        isc_buffer_setactive(&zonebuf, optlen);
-                                       result = render_zoneversion(
-                                               msg, &zonebuf, style, target);
-                                       if (result != ISC_R_SUCCESS) {
-                                               goto cleanup;
-                                       }
+                                       CHECK(render_zoneversion(
+                                               msg, &zonebuf, style, target));
                                        ADD_STRING(target, "\n");
                                        isc_buffer_forward(&optbuf, optlen);
                                        continue;
@@ -4940,8 +4901,7 @@ buildopt(dns_message_t *message, dns_rdataset_t **rdatasetp) {
                }
 
                if (len > 0xffffU) {
-                       result = ISC_R_NOSPACE;
-                       goto cleanup;
+                       CHECK(ISC_R_NOSPACE);
                }
 
                isc_buffer_allocate(message->mctx, &buf, len);
index ed47a92447691b8e6455604bf3c74d6b73211d58..da0627639336791fe6000aa425fa7cec7c3e09b4 100644 (file)
@@ -347,10 +347,7 @@ notify_send_toaddr(void *arg) {
                goto cleanup;
        }
 
-       result = notify_createmessage(notify, &message);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(notify_createmessage(notify, &message));
 
        if (notify->key != NULL) {
                /* Transfer ownership of key */
@@ -654,10 +651,7 @@ notify_send(dns_notify_t *notify) {
                        isc_sockaddr_any6(&newnotify->src);
                }
                startup = ((notify->flags & DNS_NOTIFY_STARTUP) != 0);
-               result = dns_notify_queue(newnotify, startup);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(dns_notify_queue(newnotify, startup));
                newnotify = NULL;
        }
 
index 20e1c34fe321a1fccf3391ad41451e54842d9612..1ebc6e8995a1798aa467b96187ff6ab50aac9627 100644 (file)
@@ -173,10 +173,7 @@ dns_nsec_build(dns_db_t *db, dns_dbversion_t *version, dns_dbnode_t *node,
        dns_rdataset_init(&rdataset);
        dns_rdata_init(&rdata);
 
-       result = dns_nsec_buildrdata(db, version, node, target, data, &rdata);
-       if (result != ISC_R_SUCCESS) {
-               goto failure;
-       }
+       CHECK(dns_nsec_buildrdata(db, version, node, target, data, &rdata));
 
        dns_rdatalist_init(&rdatalist);
        rdatalist.rdclass = dns_db_class(db);
@@ -189,7 +186,7 @@ dns_nsec_build(dns_db_t *db, dns_dbversion_t *version, dns_dbnode_t *node,
                result = ISC_R_SUCCESS;
        }
 
-failure:
+cleanup:
        if (dns_rdataset_isassociated(&rdataset)) {
                dns_rdataset_disassociate(&rdataset);
        }
index b95d1067a95bfbce71af2cfd871f3fb87f35d11a..a026c752f1c832285944033e5ee6c525fad63a28 100644 (file)
@@ -509,10 +509,7 @@ dns_ntatable_totext(dns_ntatable_t *ntatable, const char *view,
                }
 
                first = false;
-               result = putstr(buf, obuf);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(putstr(buf, obuf));
        }
 
 cleanup:
index b344e8e698e76ef4cfae8c142b1c123b6347d407..5ef3d1be630b08e73da625f65fc54d8f89c6ffeb 100644 (file)
@@ -2981,15 +2981,9 @@ addnoqname(isc_mem_t *mctx, dns_slabheader_t *newheader, uint32_t maxrrperset,
        result = dns_rdataset_getnoqname(rdataset, &name, &neg, &negsig);
        RUNTIME_CHECK(result == ISC_R_SUCCESS);
 
-       result = dns_rdataslab_fromrdataset(&neg, mctx, &r1, maxrrperset);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_rdataslab_fromrdataset(&neg, mctx, &r1, maxrrperset));
 
-       result = dns_rdataslab_fromrdataset(&negsig, mctx, &r2, maxrrperset);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_rdataslab_fromrdataset(&negsig, mctx, &r2, maxrrperset));
 
        noqname = isc_mem_get(mctx, sizeof(*noqname));
        *noqname = (dns_slabheader_proof_t){
@@ -3020,15 +3014,9 @@ addclosest(isc_mem_t *mctx, dns_slabheader_t *newheader, uint32_t maxrrperset,
        result = dns_rdataset_getclosest(rdataset, &name, &neg, &negsig);
        RUNTIME_CHECK(result == ISC_R_SUCCESS);
 
-       result = dns_rdataslab_fromrdataset(&neg, mctx, &r1, maxrrperset);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_rdataslab_fromrdataset(&neg, mctx, &r1, maxrrperset));
 
-       result = dns_rdataslab_fromrdataset(&negsig, mctx, &r2, maxrrperset);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_rdataslab_fromrdataset(&negsig, mctx, &r2, maxrrperset));
 
        closest = isc_mem_get(mctx, sizeof(*closest));
        *closest = (dns_slabheader_proof_t){
index 2c83eaf380edb4d4e88c451908a6a8a8954f0dcc..ed7d0ad14678cf7e03ada98393c363562f891bfe 100644 (file)
@@ -1090,14 +1090,10 @@ unknown_fromtext(dns_rdataclass_t rdclass, dns_rdatatype_t type,
        isc_buffer_allocate(mctx, &buf, token.value.as_ulong);
 
        if (token.value.as_ulong != 0U) {
-               result = isc_hex_tobuffer(lexer, buf,
-                                         (unsigned int)token.value.as_ulong);
-               if (result != ISC_R_SUCCESS) {
-                       goto failure;
-               }
+               CHECK(isc_hex_tobuffer(lexer, buf,
+                                      (unsigned int)token.value.as_ulong));
                if (isc_buffer_usedlength(buf) != token.value.as_ulong) {
-                       result = ISC_R_UNEXPECTEDEND;
-                       goto failure;
+                       CHECK(ISC_R_UNEXPECTEDEND);
                }
        }
 
@@ -1108,14 +1104,12 @@ unknown_fromtext(dns_rdataclass_t rdclass, dns_rdatatype_t type,
                isc_buffer_usedregion(buf, &r);
                result = isc_buffer_copyregion(target, &r);
        }
-       if (result != ISC_R_SUCCESS) {
-               goto failure;
-       }
+       CHECK(result);
 
        isc_buffer_free(&buf);
        return ISC_R_SUCCESS;
 
-failure:
+cleanup:
        isc_buffer_free(&buf);
        return result;
 }
index 703c2f6b1ea0da157715e1fe4c963dc43694bc9e..5910d1b6d22d1186b873025f711078ee5b2b3eba 100644 (file)
@@ -514,8 +514,7 @@ dns_rdataslab_merge(dns_slabheader_t *oheader, dns_slabheader_t *nheader,
         * than ncount, then we found such a duplicate.
         */
        if (((flags & DNS_RDATASLAB_EXACT) != 0) && (tcount < ncount)) {
-               result = DNS_R_NOTEXACT;
-               goto cleanup;
+               CHECK(DNS_R_NOTEXACT);
        }
 
        /*
@@ -523,8 +522,7 @@ dns_rdataslab_merge(dns_slabheader_t *oheader, dns_slabheader_t *nheader,
         * FORCE flag isn't set, we're done.
         */
        if (tcount == 0 && (flags & DNS_RDATASLAB_FORCE) == 0) {
-               result = DNS_R_UNCHANGED;
-               goto cleanup;
+               CHECK(DNS_R_UNCHANGED);
        }
 
        /* Add to tcount the total number of items from the old slab. */
@@ -535,13 +533,11 @@ dns_rdataslab_merge(dns_slabheader_t *oheader, dns_slabheader_t *nheader,
 
        /* Single types can't have more than one RR. */
        if (tcount > 1 && dns_rdatatype_issingleton(type)) {
-               result = DNS_R_SINGLETON;
-               goto cleanup;
+               CHECK(DNS_R_SINGLETON);
        }
 
        if (tcount > 0xffff) {
-               result = ISC_R_NOSPACE;
-               goto cleanup;
+               CHECK(ISC_R_NOSPACE);
        }
 
        /* Allocate the target buffer and copy the new slab's header */
@@ -677,8 +673,7 @@ dns_rdataslab_subtract(dns_slabheader_t *oheader, dns_slabheader_t *sheader,
         * duplicates.)
         */
        if ((flags & DNS_RDATASLAB_EXACT) != 0 && rcount != scount) {
-               result = DNS_R_NOTEXACT;
-               goto cleanup;
+               CHECK(DNS_R_NOTEXACT);
        }
 
        /*
@@ -686,16 +681,14 @@ dns_rdataslab_subtract(dns_slabheader_t *oheader, dns_slabheader_t *sheader,
         * create a new buffer, just return.
         */
        if (tcount == 0) {
-               result = DNS_R_NXRRSET;
-               goto cleanup;
+               CHECK(DNS_R_NXRRSET);
        }
 
        /*
         * If nothing is going to change, stop.
         */
        if (rcount == 0) {
-               result = DNS_R_UNCHANGED;
-               goto cleanup;
+               CHECK(DNS_R_UNCHANGED);
        }
 
        /*
index 2d9d445624090d9382c7d97c9aabd374556abc6c..00556da402d05901740e4e2efd2d3936af41a980 100644 (file)
@@ -463,17 +463,11 @@ dns_request_createraw(dns_requestmgr_t *requestmgr, isc_buffer_t *msgbuf,
                              timeout, udptimeout, udpretries);
 
        isc_buffer_allocate(mctx, &request->query, r.length + (tcp ? 2 : 0));
-       result = isc_buffer_copyregion(request->query, &r);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(isc_buffer_copyregion(request->query, &r));
 
 again:
-       result = get_dispatch(tcp, newtcp, requestmgr, srcaddr, destaddr,
-                             transport, &request->dispatch);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(get_dispatch(tcp, newtcp, requestmgr, srcaddr, destaddr,
+                          transport, &request->dispatch));
 
        if ((options & DNS_REQUESTOPT_FIXEDID) != 0) {
                id = (r.base[0] << 8) | r.base[1];
@@ -589,26 +583,17 @@ dns_request_create(dns_requestmgr_t *requestmgr, dns_message_t *message,
                dns_tsigkey_attach(key, &request->tsigkey);
        }
 
-       result = dns_message_settsigkey(message, request->tsigkey);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_message_settsigkey(message, request->tsigkey));
 
 again:
-       result = get_dispatch(tcp, false, requestmgr, srcaddr, destaddr,
-                             transport, &request->dispatch);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(get_dispatch(tcp, false, requestmgr, srcaddr, destaddr, transport,
+                          &request->dispatch));
 
-       result = dns_dispatch_add(request->dispatch, loop, 0,
-                                 request->connect_timeout, request->timeout,
-                                 destaddr, transport, tlsctx_cache,
-                                 req_connected, req_senddone, req_response,
-                                 request, &id, &request->dispentry);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_dispatch_add(request->dispatch, loop, 0,
+                              request->connect_timeout, request->timeout,
+                              destaddr, transport, tlsctx_cache, req_connected,
+                              req_senddone, req_response, request, &id,
+                              &request->dispentry));
 
        message->id = id;
        result = req_render(message, &request->query, options, mctx);
@@ -624,10 +609,7 @@ again:
                goto cleanup;
        }
 
-       result = dns_message_getquerytsig(message, mctx, &request->tsig);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_message_getquerytsig(message, mctx, &request->tsig));
 
        request->destaddr = *destaddr;
        request->flags |= DNS_REQUEST_F_CONNECTING;
@@ -692,44 +674,22 @@ req_render(dns_message_t *message, isc_buffer_t **bufferp, unsigned int options,
        /*
         * Render message.
         */
-       result = dns_message_renderbegin(message, &cctx, buf1);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
-       result = dns_message_rendersection(message, DNS_SECTION_QUESTION, 0);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
-       result = dns_message_rendersection(message, DNS_SECTION_ANSWER, 0);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
-       result = dns_message_rendersection(message, DNS_SECTION_AUTHORITY, 0);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
-       result = dns_message_rendersection(message, DNS_SECTION_ADDITIONAL, 0);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
-       result = dns_message_renderend(message);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_message_renderbegin(message, &cctx, buf1));
+       CHECK(dns_message_rendersection(message, DNS_SECTION_QUESTION, 0));
+       CHECK(dns_message_rendersection(message, DNS_SECTION_ANSWER, 0));
+       CHECK(dns_message_rendersection(message, DNS_SECTION_AUTHORITY, 0));
+       CHECK(dns_message_rendersection(message, DNS_SECTION_ADDITIONAL, 0));
+       CHECK(dns_message_renderend(message));
 
        /*
         * Copy rendered message to exact sized buffer.
         */
        isc_buffer_usedregion(buf1, &r);
        if ((options & DNS_REQUESTOPT_TCP) == 0 && r.length > 512) {
-               result = DNS_R_USETCP;
-               goto cleanup;
+               CHECK(DNS_R_USETCP);
        }
        isc_buffer_allocate(mctx, &buf2, r.length);
-       result = isc_buffer_copyregion(buf2, &r);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(isc_buffer_copyregion(buf2, &r));
 
        /*
         * Cleanup and return.
index 3b919170e1a9c6742305763216c5e22cd7d48921..9a31ddeb28603215f608e1864f7c92772a016ddc 100644 (file)
@@ -217,8 +217,7 @@ add_server(isc_mem_t *mctx, const char *address_str,
        address = isc_mem_get(mctx, sizeof(*address));
        if (res->ai_addrlen > sizeof(address->type)) {
                isc_mem_put(mctx, address, sizeof(*address));
-               result = ISC_R_RANGE;
-               goto cleanup;
+               CHECK(ISC_R_RANGE);
        }
 
        if (res->ai_family == AF_INET) {
@@ -238,8 +237,7 @@ add_server(isc_mem_t *mctx, const char *address_str,
                isc_mem_put(mctx, address, sizeof(*address));
                UNEXPECTED_ERROR("ai_family (%d) not INET nor INET6",
                                 res->ai_family);
-               result = ISC_R_UNEXPECTED;
-               goto cleanup;
+               CHECK(ISC_R_UNEXPECTED);
        }
        address->length = (unsigned int)res->ai_addrlen;
 
index f79eb122ec3728a9f770017c0108be99e048c528..2d171650549832c3ee5916fbad5c1437626b72ae 100644 (file)
@@ -4524,10 +4524,7 @@ resume_qmin(void *arg) {
        fcount_decr(fctx);
        dns_name_copy(fname, fctx->domain);
 
-       result = fcount_incr(fctx, false);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(fcount_incr(fctx, false));
 
        dns_name_copy(dcname, fctx->qmindcname);
        fctx->ns_ttl = fctx->nameservers.ttl;
@@ -6314,10 +6311,7 @@ rctx_cachemessage(respctx_t *rctx) {
        {
                MSG_SECTION_FOREACH(message, section, name) {
                        if (name->attributes.cache) {
-                               result = rctx_cachename(rctx, message, name);
-                               if (result != ISC_R_SUCCESS) {
-                                       goto cleanup;
-                               }
+                               CHECK(rctx_cachename(rctx, message, name));
                        }
                }
        }
@@ -6968,10 +6962,7 @@ resume_dslookup(void *arg) {
 
                fcount_decr(fctx);
                dns_name_copy(fctx->nsname, fctx->domain);
-               result = fcount_incr(fctx, false);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(fcount_incr(fctx, false));
 
                /* Try again. */
                fctx_try(fctx, true);
@@ -7001,8 +6992,7 @@ resume_dslookup(void *arg) {
                 * made.  Interrupt the DS chasing process, returning SERVFAIL.
                 */
                if (dns_name_equal(fctx->nsname, fetch->private->domain)) {
-                       result = DNS_R_SERVFAIL;
-                       goto cleanup;
+                       CHECK(DNS_R_SERVFAIL);
                }
 
                /* Get nameservers from fetch before we destroy it. */
@@ -10855,10 +10845,7 @@ dns_resolver_dumpquota(dns_resolver_t *res, isc_buffer_t *buf) {
                         " spilled %" PRIuFAST32 ")",
                         nb, count, allowed, dropped);
 
-               result = isc_buffer_reserve(buf, strlen(text));
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(isc_buffer_reserve(buf, strlen(text)));
                isc_buffer_putstr(buf, text);
        }
        if (result == ISC_R_NOMORE) {
index 48bd1e167369871d68bf71ce644b332d8ae027fb..f672ea5d54e621311370ca1487e9a42defdcab1e 100644 (file)
@@ -164,23 +164,11 @@ check_hints(dns_db_t *db) {
        dns_rdataset_init(&rootns);
        (void)dns_db_find(db, dns_rootname, NULL, dns_rdatatype_ns, 0, now,
                          NULL, name, &rootns, NULL);
-       result = dns_db_createiterator(db, 0, &dbiter);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_db_createiterator(db, 0, &dbiter));
        DNS_DBITERATOR_FOREACH(dbiter) {
-               result = dns_dbiterator_current(dbiter, &node, name);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
-               result = dns_db_allrdatasets(db, node, NULL, 0, now, &rdsiter);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
-               result = check_node(&rootns, name, rdsiter);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(dns_dbiterator_current(dbiter, &node, name));
+               CHECK(dns_db_allrdatasets(db, node, NULL, 0, now, &rdsiter));
+               CHECK(check_node(&rootns, name, rdsiter));
                dns_rdatasetiter_destroy(&rdsiter);
                dns_db_detachnode(&node);
        }
@@ -212,21 +200,15 @@ dns_rootns_create(isc_mem_t *mctx, dns_rdataclass_t rdclass,
 
        REQUIRE(target != NULL && *target == NULL);
 
-       result = dns_db_create(mctx, ZONEDB_DEFAULT, dns_rootname,
-                              dns_dbtype_zone, rdclass, 0, NULL, &db);
-       if (result != ISC_R_SUCCESS) {
-               goto failure;
-       }
+       CHECK(dns_db_create(mctx, ZONEDB_DEFAULT, dns_rootname, dns_dbtype_zone,
+                           rdclass, 0, NULL, &db));
 
        len = strlen(root_ns);
        isc_buffer_init(&source, root_ns, len);
        isc_buffer_add(&source, len);
 
        dns_rdatacallbacks_init(&callbacks);
-       result = dns_db_beginload(db, &callbacks);
-       if (result != ISC_R_SUCCESS) {
-               goto failure;
-       }
+       CHECK(dns_db_beginload(db, &callbacks));
        if (filename != NULL) {
                /*
                 * Load the hints from the specified filename.
@@ -249,8 +231,8 @@ dns_rootns_create(isc_mem_t *mctx, dns_rdataclass_t rdclass,
        if (result == ISC_R_SUCCESS || result == DNS_R_SEENINCLUDE) {
                result = eresult;
        }
-       if (result != ISC_R_SUCCESS && result != DNS_R_SEENINCLUDE) {
-               goto failure;
+       if (result != DNS_R_SEENINCLUDE) {
+               CHECK(result);
        }
        if (check_hints(db) != ISC_R_SUCCESS) {
                isc_log_write(DNS_LOGCATEGORY_GENERAL, DNS_LOGMODULE_HINTS,
@@ -260,7 +242,7 @@ dns_rootns_create(isc_mem_t *mctx, dns_rdataclass_t rdclass,
        *target = db;
        return ISC_R_SUCCESS;
 
-failure:
+cleanup:
        isc_log_write(DNS_LOGCATEGORY_GENERAL, DNS_LOGMODULE_HINTS,
                      ISC_LOG_ERROR,
                      "could not configure root hints from "
index a1b7fe13d21451de5df67c6e6ba2bc35c12b29bc..6004190b94368b9930c2c4cedf3a4e2d88a51bf3 100644 (file)
@@ -1738,10 +1738,7 @@ update_nodes(dns_rpz_zone_t *rpz, isc_ht_t *newnodes) {
                dns_rdatasetiter_t *rdsiter = NULL;
                dns_dbnode_t *node = NULL;
 
-               result = dns__rpz_shuttingdown(rpz->rpzs);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(dns__rpz_shuttingdown(rpz->rpzs));
 
                result = dns_dbiterator_current(updbit, &node, name);
                if (result != ISC_R_SUCCESS) {
@@ -1921,15 +1918,9 @@ update_rpz_cb(void *data) {
 
        isc_ht_init(&newnodes, rpz->rpzs->mctx, 1, ISC_HT_CASE_SENSITIVE);
 
-       result = update_nodes(rpz, newnodes);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(update_nodes(rpz, newnodes));
 
-       result = cleanup_nodes(rpz);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(cleanup_nodes(rpz));
 
        /* Finalize the update */
        ISC_SWAP(rpz->nodes, newnodes);
index 3852b06b1ea1415a180cecfc74d88653eb59dd0e..1393bc909acf86e7e5d60f1de070eedd03c7b042 100644 (file)
@@ -990,21 +990,14 @@ modrdataset(dns_db_t *db, dns_dbnode_t *node, dns_dbversion_t *version,
 
        isc_buffer_allocate(mctx, &buffer, 1024);
 
-       result = dns_master_stylecreate(&style, 0, 0, 0, 0, 0, 0, 1, 0xffffffff,
-                                       mctx);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_master_stylecreate(&style, 0, 0, 0, 0, 0, 0, 1, 0xffffffff,
+                                    mctx));
 
-       result = dns_master_rdatasettotext(&sdlznode->name, rdataset, style,
-                                          NULL, buffer);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_master_rdatasettotext(&sdlznode->name, rdataset, style, NULL,
+                                       buffer));
 
        if (isc_buffer_usedlength(buffer) < 1) {
-               result = ISC_R_BADADDRESSFORM;
-               goto cleanup;
+               CHECK(ISC_R_BADADDRESSFORM);
        }
 
        rdatastr = isc_buffer_base(buffer);
@@ -1654,10 +1647,7 @@ dns_sdlz_putrr(dns_sdlzlookup_t *lookup, const char *type, dns_ttl_t ttl,
                isc_buffer_constinit(&b, data, strlen(data));
                isc_buffer_add(&b, strlen(data));
 
-               result = isc_lex_openbuffer(lex, &b);
-               if (result != ISC_R_SUCCESS) {
-                       goto failure;
-               }
+               CHECK(isc_lex_openbuffer(lex, &b));
 
                rdatabuf = NULL;
                isc_buffer_allocate(mctx, &rdatabuf, size);
@@ -1678,8 +1668,7 @@ dns_sdlz_putrr(dns_sdlzlookup_t *lookup, const char *type, dns_ttl_t ttl,
        } while (result == ISC_R_NOSPACE);
 
        if (result != ISC_R_SUCCESS) {
-               result = DNS_R_SERVFAIL;
-               goto failure;
+               CHECK(DNS_R_SERVFAIL);
        }
 
        ISC_LIST_APPEND(rdatalist->rdata, rdata, link);
@@ -1691,7 +1680,7 @@ dns_sdlz_putrr(dns_sdlzlookup_t *lookup, const char *type, dns_ttl_t ttl,
 
        return ISC_R_SUCCESS;
 
-failure:
+cleanup:
        if (rdatabuf != NULL) {
                isc_buffer_free(&rdatabuf);
        }
index 558473890aeb027c46773536a06ad6c64cfa53e6..a6acbf15ddecd3272881722892cb0edce590c467 100644 (file)
@@ -436,10 +436,7 @@ dns_transport_get_tlsctx(dns_transport_t *transport, const isc_sockaddr_t *peer,
                 * parameters from the configuration file and try to
                 * store it for further reuse.
                 */
-               result = isc_tlsctx_createclient(&tlsctx);
-               if (result != ISC_R_SUCCESS) {
-                       goto failure;
-               }
+               CHECK(isc_tlsctx_createclient(&tlsctx));
                tls_versions = dns_transport_get_tls_versions(transport);
                if (tls_versions != 0) {
                        isc_tlsctx_set_protocols(tlsctx, tls_versions);
@@ -475,12 +472,8 @@ dns_transport_get_tlsctx(dns_transport_t *transport, const isc_sockaddr_t *peer,
                                 * which case the store with system-wide
                                 * CA certificates will be created.
                                 */
-                               result = isc_tls_cert_store_create(ca_file,
-                                                                  &store);
-
-                               if (result != ISC_R_SUCCESS) {
-                                       goto failure;
-                               }
+                               CHECK(isc_tls_cert_store_create(ca_file,
+                                                               &store));
                        } else {
                                store = found_store;
                        }
@@ -503,12 +496,9 @@ dns_transport_get_tlsctx(dns_transport_t *transport, const isc_sockaddr_t *peer,
                         * Only SubjectAltName must be checked.
                         */
                        hostname_ignore_subject = true;
-                       result = isc_tlsctx_enable_peer_verification(
+                       CHECK(isc_tlsctx_enable_peer_verification(
                                tlsctx, false, store, hostname,
-                               hostname_ignore_subject);
-                       if (result != ISC_R_SUCCESS) {
-                               goto failure;
-                       }
+                               hostname_ignore_subject));
 
                        /*
                         * Let's load client certificate and enable
@@ -519,11 +509,8 @@ dns_transport_get_tlsctx(dns_transport_t *transport, const isc_sockaddr_t *peer,
                        if (cert_file != NULL) {
                                INSIST(key_file != NULL);
 
-                               result = isc_tlsctx_load_certificate(
-                                       tlsctx, key_file, cert_file);
-                               if (result != ISC_R_SUCCESS) {
-                                       goto failure;
-                               }
+                               CHECK(isc_tlsctx_load_certificate(
+                                       tlsctx, key_file, cert_file));
                        }
                }
 
@@ -597,7 +584,7 @@ dns_transport_get_tlsctx(dns_transport_t *transport, const isc_sockaddr_t *peer,
 
        return ISC_R_SUCCESS;
 
-failure:
+cleanup:
        if (tlsctx != NULL) {
                isc_tlsctx_free(&tlsctx);
        }
index ba62d9a3444ffdbf8a75d133cda4843e61240ae2..555e65d6a9ecfca39ba749577bc0d9b71c4a92ba 100644 (file)
@@ -445,8 +445,7 @@ fetch_callback_dnskey(void *arg) {
        dns_resolver_destroyfetch(&val->fetch);
 
        if (CANCELED(val) || CANCELING(val)) {
-               result = ISC_R_CANCELED;
-               goto cleanup;
+               CHECK(ISC_R_CANCELED);
        }
 
        if (trustchain) {
@@ -541,8 +540,7 @@ fetch_callback_ds(void *arg) {
        dns_resolver_destroyfetch(&val->fetch);
 
        if (CANCELED(val) || CANCELING(val)) {
-               result = ISC_R_CANCELED;
-               goto cleanup;
+               CHECK(ISC_R_CANCELED);
        }
 
        if (trustchain) {
@@ -650,8 +648,7 @@ validator_callback_dnskey(void *arg) {
        val->subvalidator = NULL;
 
        if (CANCELED(val) || CANCELING(val)) {
-               result = ISC_R_CANCELED;
-               goto cleanup;
+               CHECK(ISC_R_CANCELED);
        }
 
        validator_log(val, ISC_LOG_DEBUG(3), "in validator_callback_dnskey");
@@ -704,8 +701,7 @@ validator_callback_ds(void *arg) {
        val->subvalidator = NULL;
 
        if (CANCELED(val) || CANCELING(val)) {
-               result = ISC_R_CANCELED;
-               goto cleanup;
+               CHECK(ISC_R_CANCELED);
        }
 
        validator_log(val, ISC_LOG_DEBUG(3), "in validator_callback_ds");
@@ -769,8 +765,7 @@ validator_callback_cname(void *arg) {
        val->subvalidator = NULL;
 
        if (CANCELED(val) || CANCELING(val)) {
-               result = ISC_R_CANCELED;
-               goto cleanup;
+               CHECK(ISC_R_CANCELED);
        }
 
        validator_log(val, ISC_LOG_DEBUG(3), "in validator_callback_cname");
@@ -814,8 +809,7 @@ validator_callback_nsec(void *arg) {
        val->subvalidator = NULL;
 
        if (CANCELED(val) || CANCELING(val)) {
-               result = ISC_R_CANCELED;
-               goto cleanup;
+               CHECK(ISC_R_CANCELED);
        }
 
        validator_log(val, ISC_LOG_DEBUG(3), "in validator_callback_nsec");
@@ -1575,8 +1569,7 @@ validate_answer_iter_start(dns_validator_t *val) {
        val->attributes &= ~VALATTR_OFFLOADED;
        if (CANCELING(val)) {
                validator_cancel_finish(val);
-               result = ISC_R_CANCELED;
-               goto cleanup;
+               CHECK(ISC_R_CANCELED);
        }
 
        if (val->resume) {
@@ -1607,8 +1600,7 @@ validate_answer_iter_next(void *arg) {
        val->attributes &= ~VALATTR_OFFLOADED;
        if (CANCELING(val)) {
                validator_cancel_finish(val);
-               result = ISC_R_CANCELED;
-               goto cleanup;
+               CHECK(ISC_R_CANCELED);
        }
 
        val->resume = false;
@@ -1698,8 +1690,7 @@ validate_answer_process(void *arg) {
        val->attributes &= ~VALATTR_OFFLOADED;
        if (CANCELING(val)) {
                validator_cancel_finish(val);
-               result = ISC_R_CANCELED;
-               goto cleanup;
+               CHECK(ISC_R_CANCELED);
        }
 
        dns_rdata_reset(&val->rdata);
@@ -1709,10 +1700,7 @@ validate_answer_process(void *arg) {
                val->siginfo = isc_mem_get(val->view->mctx,
                                           sizeof(*val->siginfo));
        }
-       result = dns_rdata_tostruct(&val->rdata, val->siginfo, NULL);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_rdata_tostruct(&val->rdata, val->siginfo, NULL));
 
        /*
         * At this point we could check that the signature algorithm
@@ -1760,7 +1748,6 @@ validate_answer_process(void *arg) {
 
 next_key:
        result = validate_async_run(val, validate_answer_iter_next);
-       goto cleanup;
 
 cleanup:
        validate_async_done(val, result);
@@ -2256,8 +2243,7 @@ validate_dnskey(void *arg) {
        dns_rdata_ds_t ds;
 
        if (CANCELED(val) || CANCELING(val)) {
-               result = ISC_R_CANCELED;
-               goto cleanup;
+               CHECK(ISC_R_CANCELED);
        }
 
        /*
@@ -2292,8 +2278,7 @@ validate_dnskey(void *arg) {
                                validator_log(val, ISC_LOG_DEBUG(3),
                                              "no trusted root key");
                        }
-                       result = DNS_R_NOVALIDSIG;
-                       goto cleanup;
+                       CHECK(DNS_R_NOVALIDSIG);
                }
 
                /*
@@ -3587,8 +3572,7 @@ validator_start(void *arg) {
        isc_result_t result = ISC_R_FAILURE;
 
        if (CANCELED(val) || CANCELING(val)) {
-               result = ISC_R_CANCELED;
-               goto cleanup;
+               CHECK(ISC_R_CANCELED);
        }
 
        validator_log(val, ISC_LOG_DEBUG(3), "starting");
index 47c4fed0dd80edc6abc5ba17e2e568878bbbb4da..bca4c3a7ab7c4fb57e269ad7e0fe52f46c5b1616 100644 (file)
@@ -1075,8 +1075,7 @@ dns_view_findzonecut(dns_view_t *view, const dns_name_t *name,
                        try_hints = true;
                        goto finish;
                } else {
-                       result = DNS_R_NXDOMAIN;
-                       goto cleanup;
+                       CHECK(DNS_R_NXDOMAIN);
                }
        } else if (result != ISC_R_SUCCESS) {
                /*
@@ -2125,8 +2124,7 @@ dns_view_addtrustedkey(dns_view_t *view, dns_rdatatype_t rdtype,
        REQUIRE(view->rdclass == dns_rdataclass_in);
 
        if (rdtype != dns_rdatatype_dnskey && rdtype != dns_rdatatype_ds) {
-               result = ISC_R_NOTIMPLEMENTED;
-               goto cleanup;
+               CHECK(ISC_R_NOTIMPLEMENTED);
        }
 
        isc_buffer_init(&b, rdatabuf, sizeof(rdatabuf));
index 562d8d132ba8802bda6c0a7735f0c248638b4949..26e08945014c0fc622061847d98fc65ff9b89c3f 100644 (file)
@@ -2339,8 +2339,7 @@ zone_load(dns_zone_t *zone, unsigned int flags, bool locked) {
                if ((flags & DNS_ZONELOADFLAG_THAW) != 0) {
                        DNS_ZONE_SETFLAG(zone, DNS_ZONEFLG_THAW);
                }
-               result = ISC_R_LOADING;
-               goto cleanup;
+               CHECK(ISC_R_LOADING);
        }
 
        INSIST(zone->db_argc >= 1);
@@ -2404,8 +2403,7 @@ zone_load(dns_zone_t *zone, unsigned int flags, bool locked) {
                                      ISC_LOG_DEBUG(1),
                                      "skipping load: master file "
                                      "older than last load");
-                       result = DNS_R_UPTODATE;
-                       goto cleanup;
+                       CHECK(DNS_R_UPTODATE);
                }
 
                /*
@@ -2455,8 +2453,7 @@ zone_load(dns_zone_t *zone, unsigned int flags, bool locked) {
                                      "DLZ %s does not exist or is set "
                                      "to 'search yes;'",
                                      zone->db_argv[1]);
-                       result = ISC_R_NOTFOUND;
-                       goto cleanup;
+                       CHECK(ISC_R_NOTFOUND);
                }
 
                ZONEDB_LOCK(&zone->dblock, isc_rwlocktype_write);
@@ -2847,21 +2844,15 @@ zone_startload(dns_db_t *db, dns_zone_t *zone, isc_time_t loadtime) {
        load->callbacks.rawdata = zone_setrawdata;
        zone_iattach(zone, &load->callbacks.zone);
 
-       result = dns_db_beginload(db, &load->callbacks);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_db_beginload(db, &load->callbacks));
 
        if (zone->zmgr != NULL && zone->db != NULL) {
-               result = dns_master_loadfileasync(
+               CHECK(dns_master_loadfileasync(
                        zone->masterfile, dns_db_origin(db), dns_db_origin(db),
                        zone->rdclass, options, 0, &load->callbacks, zone->loop,
                        zone_loaddone, load, &zone->loadctx,
                        zone_registerinclude, zone, zone->mctx,
-                       zone->masterformat, zone->maxttl);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+                       zone->masterformat, zone->maxttl));
 
                return DNS_R_CONTINUE;
        } else if (zone->stream != NULL) {
@@ -3470,10 +3461,7 @@ integrity_checks(dns_zone_t *zone, dns_db_t *db) {
        }
 
        DNS_DBITERATOR_FOREACH(dbiterator) {
-               result = dns_dbiterator_current(dbiterator, &node, name);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(dns_dbiterator_current(dbiterator, &node, name));
 
                /*
                 * Is this name visible in the zone?
@@ -3857,18 +3845,12 @@ zone_check_dnskeys(dns_zone_t *zone, dns_db_t *db) {
        bool logged_algorithm[DST_MAX_ALGS] = { 0 };
        bool alldeprecated = true;
 
-       result = dns_db_findnode(db, &zone->origin, false, &node);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_db_findnode(db, &zone->origin, false, &node));
 
        dns_db_currentversion(db, &version);
        dns_rdataset_init(&rdataset);
-       result = dns_db_findrdataset(db, node, version, dns_rdatatype_dnskey,
-                                    dns_rdatatype_none, 0, &rdataset, NULL);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_db_findrdataset(db, node, version, dns_rdatatype_dnskey,
+                                 dns_rdatatype_none, 0, &rdataset, NULL));
 
        DNS_RDATASET_FOREACH(&rdataset) {
                char algbuf[DNS_SECALG_FORMATSIZE];
@@ -3972,10 +3954,7 @@ resume_signingwithkey(dns_zone_t *zone) {
                goto cleanup;
        }
 
-       result = dns_db_findnode(db, &zone->origin, false, &node);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_db_findnode(db, &zone->origin, false, &node));
 
        dns_db_currentversion(db, &version);
        dns_rdataset_init(&rdataset);
@@ -4240,10 +4219,7 @@ resume_addnsec3chain(dns_zone_t *zone) {
                goto cleanup;
        }
 
-       result = dns_db_findnode(db, &zone->origin, false, &node);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_db_findnode(db, &zone->origin, false, &node));
 
        dns_db_currentversion(db, &version);
 
@@ -5332,10 +5308,7 @@ zone_postload(dns_zone_t *zone, dns_db_t *db, isc_time_t loadtime,
         * a sane starting point.)
         */
        if (noprimary && zone->type == dns_zone_key) {
-               result = add_soa(zone, db);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(add_soa(zone, db));
        }
 
        /*
@@ -5345,11 +5318,8 @@ zone_postload(dns_zone_t *zone, dns_db_t *db, isc_time_t loadtime,
            !DNS_ZONE_OPTION(zone, DNS_ZONEOPT_NOMERGE) &&
            !DNS_ZONE_FLAG(zone, DNS_ZONEFLG_LOADED))
        {
-               result = zone_journal_rollforward(zone, db, &needdump,
-                                                 &fixjournal);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(zone_journal_rollforward(zone, db, &needdump,
+                                              &fixjournal));
        }
 
        /*
@@ -5447,30 +5417,24 @@ zone_postload(dns_zone_t *zone, dns_db_t *db, isc_time_t loadtime,
                        goto cleanup;
                }
                if (zone->type == dns_zone_primary && errors != 0) {
-                       result = DNS_R_BADZONE;
-                       goto cleanup;
+                       CHECK(DNS_R_BADZONE);
                }
                if (zone->type != dns_zone_stub &&
                    zone->type != dns_zone_redirect)
                {
-                       result = check_nsec3param(zone, db);
-                       if (result != ISC_R_SUCCESS) {
-                               goto cleanup;
-                       }
+                       CHECK(check_nsec3param(zone, db));
                }
                if (zone->type == dns_zone_primary &&
                    DNS_ZONE_OPTION(zone, DNS_ZONEOPT_CHECKINTEGRITY) &&
                    !integrity_checks(zone, db))
                {
-                       result = DNS_R_BADZONE;
-                       goto cleanup;
+                       CHECK(DNS_R_BADZONE);
                }
                if (zone->type == dns_zone_primary &&
                    DNS_ZONE_OPTION(zone, DNS_ZONEOPT_CHECKDUPRR) &&
                    !zone_check_dup(zone, db))
                {
-                       result = DNS_R_BADZONE;
-                       goto cleanup;
+                       CHECK(DNS_R_BADZONE);
                }
 
                if (zone->type == dns_zone_primary) {
@@ -5488,14 +5452,10 @@ zone_postload(dns_zone_t *zone, dns_db_t *db, isc_time_t loadtime,
                        dns_zone_log(zone, ISC_LOG_ERROR,
                                     "'log-report-channel' is set, but no "
                                     "'*._er/TXT' wildcard found");
-                       result = DNS_R_BADZONE;
-                       goto cleanup;
+                       CHECK(DNS_R_BADZONE);
                }
 
-               result = dns_zone_verifydb(zone, db, NULL);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(dns_zone_verifydb(zone, db, NULL));
 
                if (zone->db != NULL) {
                        unsigned int oldsoacount;
@@ -5538,8 +5498,7 @@ zone_postload(dns_zone_t *zone, dns_db_t *db, isc_time_t loadtime,
                                              "new serial (%u) out of range "
                                              "[%u - %u]",
                                              serial, serialmin, serialmax);
-                               result = DNS_R_BADZONE;
-                               goto cleanup;
+                               CHECK(DNS_R_BADZONE);
                        } else if (!isc_serial_ge(serial, oldserial)) {
                                dns_zone_logc(zone, DNS_LOGCATEGORY_ZONELOAD,
                                              ISC_LOG_ERROR,
@@ -5624,8 +5583,7 @@ zone_postload(dns_zone_t *zone, dns_db_t *db, isc_time_t loadtime,
 
        default:
                UNEXPECTED_ERROR("unexpected zone type %d", zone->type);
-               result = ISC_R_UNEXPECTED;
-               goto cleanup;
+               CHECK(ISC_R_UNEXPECTED);
        }
 
        /*
@@ -14282,8 +14240,7 @@ again:
                }
                break;
        default:
-               result = ISC_R_NOTIMPLEMENTED;
-               goto cleanup;
+               CHECK(ISC_R_NOTIMPLEMENTED);
        }
 
        /*
@@ -16944,15 +16901,9 @@ copy_non_dnssec_records(dns_db_t *db, dns_dbversion_t *version, dns_db_t *rawdb,
 
        dns_dbiterator_pause(dbiterator);
 
-       result = dns_db_findnode(db, name, true, &node);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_db_findnode(db, name, true, &node));
 
-       result = dns_db_allrdatasets(rawdb, rawnode, NULL, 0, 0, &rdsit);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_db_allrdatasets(rawdb, rawnode, NULL, 0, 0, &rdsit));
 
        DNS_RDATASETITER_FOREACH(rdsit) {
                dns_rdataset_t rdataset = DNS_RDATASET_INIT;
@@ -18442,15 +18393,11 @@ dns_zone_forwardupdate(dns_zone_t *zone, dns_message_t *msg,
 
        mr = dns_message_getrawmessage(msg);
        if (mr == NULL) {
-               result = ISC_R_UNEXPECTEDEND;
-               goto cleanup;
+               CHECK(ISC_R_UNEXPECTEDEND);
        }
 
        isc_buffer_allocate(zone->mctx, &forward->msgbuf, mr->length);
-       result = isc_buffer_copyregion(forward->msgbuf, mr);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(isc_buffer_copyregion(forward->msgbuf, mr));
 
        isc_mem_attach(zone->mctx, &forward->mctx);
        dns_zone_iattach(zone, &forward->zone);
@@ -19028,15 +18975,9 @@ zone_saveunique(dns_zone_t *zone, const char *path, const char *templat) {
 
        buf = isc_mem_get(zone->mctx, buflen);
 
-       result = isc_file_template(path, templat, buf, buflen);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(isc_file_template(path, templat, buf, buflen));
 
-       result = isc_file_renameunique(path, buf);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(isc_file_renameunique(path, buf));
 
        dns_zone_log(zone, ISC_LOG_WARNING,
                     "unable to load from '%s'; "
@@ -19688,8 +19629,7 @@ zone_signwithkey(dns_zone_t *zone, dst_algorithm_t algorithm, uint16_t keyid,
        ZONEDB_UNLOCK(&zone->dblock, isc_rwlocktype_read);
 
        if (db == NULL) {
-               result = ISC_R_NOTFOUND;
-               goto cleanup;
+               CHECK(ISC_R_NOTFOUND);
        }
 
        dns_db_attach(db, &signing->db);
@@ -20692,8 +20632,7 @@ checkds_send_toaddr(void *arg) {
            checkds->zone->view->requestmgr == NULL ||
            checkds->zone->db == NULL)
        {
-               result = ISC_R_CANCELED;
-               goto cleanup;
+               CHECK(ISC_R_CANCELED);
        }
 
        /*
@@ -20707,8 +20646,7 @@ checkds_send_toaddr(void *arg) {
                dns_zone_log(checkds->zone, ISC_LOG_DEBUG(3),
                             "checkds: ignoring IPv6 mapped IPV4 address: %s",
                             addrbuf);
-               result = ISC_R_CANCELED;
-               goto cleanup;
+               CHECK(ISC_R_CANCELED);
        }
 
        checkds_createmessage(checkds->zone, &message);
@@ -20843,10 +20781,7 @@ checkds_send_tons(dns_checkds_t *checkds) {
                }
 
                newcheckds = NULL;
-               result = checkds_create(checkds->mctx, 0, &newcheckds);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(checkds_create(checkds->mctx, 0, &newcheckds));
                zone_iattach(zone, &newcheckds->zone);
                ISC_LIST_APPEND(newcheckds->zone->checkds_requests, newcheckds,
                                link);
@@ -20868,13 +20803,10 @@ checkds_send_tons(dns_checkds_t *checkds) {
                 * publicly available on the default transport protocol.
                 */
 
-               result = isc_ratelimiter_enqueue(
-                       newcheckds->zone->zmgr->checkdsrl,
-                       newcheckds->zone->loop, checkds_send_toaddr, newcheckds,
-                       &newcheckds->rlevent);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(isc_ratelimiter_enqueue(newcheckds->zone->zmgr->checkdsrl,
+                                             newcheckds->zone->loop,
+                                             checkds_send_toaddr, newcheckds,
+                                             &newcheckds->rlevent));
                newcheckds = NULL;
        }
 
@@ -21107,10 +21039,7 @@ nsfetch_done(dns_zonefetch_t *fetch, isc_result_t eresult) {
                return DNS_R_CONTINUE;
        }
 
-       result = dns_zonefetch_verify(fetch, eresult, dns_trust_secure);
-       if (result != ISC_R_SUCCESS) {
-               goto done;
-       }
+       CHECK(dns_zonefetch_verify(fetch, eresult, dns_trust_secure));
 
        /* Record the number of NS records we found. */
        zone->parent_nscount = dns_rdataset_count(nsrrset);
@@ -21163,7 +21092,7 @@ nsfetch_done(dns_zonefetch_t *fetch, isc_result_t eresult) {
 
        LOCK_ZONE(zone);
 
-done:
+cleanup:
        if (result != ISC_R_SUCCESS) {
                dnssec_log(
                        zone, ISC_LOG_ERROR,
@@ -22407,8 +22336,7 @@ dns_zone_cdscheck(dns_zone_t *zone, dns_db_t *db, dns_dbversion_t *version) {
                                                               &crdata, &dnskey,
                                                               &rdata);
                                if (result != ISC_R_SUCCESS) {
-                                       result = DNS_R_BADCDS;
-                                       goto cleanup;
+                                       CHECK(DNS_R_BADCDS);
                                }
                                CHECK(dns_rdata_tostruct(&rdata, &structdnskey,
                                                         NULL));
index 2451c2bcdf50e7c1e4d735f99ff1c4e941fb1cd3..95695c01eb23d15491bee3b92280dd23d60dc881 100644 (file)
@@ -1486,11 +1486,7 @@ check_dnskey_sigs(vctx_t *vctx, const dns_rdata_dnskey_t *dnskey,
         * is NULL, then we have neither a DNSKEY nor a DS format
         * trust anchor, and can give up.
         */
-       result = dns_keytable_find(vctx->secroots, vctx->origin, &keynode);
-       if (result != ISC_R_SUCCESS) {
-               /* No such trust anchor */
-               goto cleanup;
-       }
+       CHECK(dns_keytable_find(vctx->secroots, vctx->origin, &keynode));
 
        /*
         * If the keynode has any DS format trust anchors, that means
index cd03dbf91c884269bc1a706889ce6ec98fba6e91..babe1ec21b905ec57a1bf4ae4894d9b21f54119b 100644 (file)
@@ -170,8 +170,7 @@ isc_interfaceiter_create(isc_mem_t *mctx, isc_interfaceiter_t **iterp) {
                strerror_r(errno, strbuf, sizeof(strbuf));
                UNEXPECTED_ERROR("getting interface addresses: getifaddrs: %s",
                                 strbuf);
-               result = ISC_R_UNEXPECTED;
-               goto failure;
+               CHECK(ISC_R_UNEXPECTED);
        }
 
        /*
@@ -185,7 +184,7 @@ isc_interfaceiter_create(isc_mem_t *mctx, isc_interfaceiter_t **iterp) {
        *iterp = iter;
        return ISC_R_SUCCESS;
 
-failure:
+cleanup:
        if (iter->ifaddrs != NULL) { /* just in case */
                freeifaddrs(iter->ifaddrs);
        }
index 694286aebd82c31eb1bc2ac43ba338e7806213fd..d67171b188fb9ca2894ca235c7152aa392124995 100644 (file)
@@ -720,15 +720,11 @@ isc__nm_tcp_read(isc_nmhandle_t *handle, isc_nm_recv_cb_t cb, void *cbarg) {
        }
 
        if (isc__nmsocket_closing(sock)) {
-               result = ISC_R_CANCELED;
-               goto failure;
+               CHECK(ISC_R_CANCELED);
        }
 
        if (!sock->reading_throttled) {
-               result = isc__nm_start_reading(sock);
-               if (result != ISC_R_SUCCESS) {
-                       goto failure;
-               }
+               CHECK(isc__nm_start_reading(sock));
        }
 
        sock->reading = true;
@@ -738,7 +734,7 @@ isc__nm_tcp_read(isc_nmhandle_t *handle, isc_nm_recv_cb_t cb, void *cbarg) {
        }
 
        return;
-failure:
+cleanup:
        isc__nm_tcp_failed_read_cb(sock, result, true);
 }
 
@@ -916,15 +912,14 @@ accept_connection(isc_nmsocket_t *csock) {
         * isc__nm_tcp_close() can't handle uninitalized TCP nmsocket.
         */
        if (isc__nmsocket_closing(csock)) {
-               result = ISC_R_CANCELED;
-               goto failure;
+               CHECK(ISC_R_CANCELED);
        }
 
        r = uv_accept(&csock->server->uv_handle.stream,
                      &csock->uv_handle.stream);
        if (r != 0) {
                result = isc_uverr2result(r);
-               goto failure;
+               goto cleanup;
        }
 
        /* Check if the connection is not expired */
@@ -941,8 +936,7 @@ accept_connection(isc_nmsocket_t *csock) {
                         * it has expired. We cannot do anything better than
                         * drop it on the floor at this point.
                         */
-                       result = ISC_R_TIMEDOUT;
-                       goto failure;
+                       CHECK(ISC_R_TIMEDOUT);
                } else {
                        /* Adjust the initial read timeout accordingly */
                        csock->read_timeout -= time_elapsed_ms;
@@ -953,33 +947,26 @@ accept_connection(isc_nmsocket_t *csock) {
                               &(int){ sizeof(ss) });
        if (r != 0) {
                result = isc_uverr2result(r);
-               goto failure;
+               goto cleanup;
        }
 
-       result = isc_sockaddr_fromsockaddr(&csock->peer,
-                                          (struct sockaddr *)&ss);
-       if (result != ISC_R_SUCCESS) {
-               goto failure;
-       }
+       CHECK(isc_sockaddr_fromsockaddr(&csock->peer, (struct sockaddr *)&ss));
 
        r = uv_tcp_getsockname(&csock->uv_handle.tcp, (struct sockaddr *)&ss,
                               &(int){ sizeof(ss) });
        if (r != 0) {
                result = isc_uverr2result(r);
-               goto failure;
+               goto cleanup;
        }
 
-       result = isc_sockaddr_fromsockaddr(&local, (struct sockaddr *)&ss);
-       if (result != ISC_R_SUCCESS) {
-               goto failure;
-       }
+       CHECK(isc_sockaddr_fromsockaddr(&local, (struct sockaddr *)&ss));
 
        handle = isc__nmhandle_get(csock, NULL, &local);
 
        result = csock->accept_cb(handle, ISC_R_SUCCESS, csock->accept_cbarg);
        if (result != ISC_R_SUCCESS) {
                isc_nmhandle_detach(&handle);
-               goto failure;
+               goto cleanup;
        }
 
        csock->accepting = false;
@@ -1001,7 +988,7 @@ accept_connection(isc_nmsocket_t *csock) {
 
        return ISC_R_SUCCESS;
 
-failure:
+cleanup:
        csock->active = false;
        csock->accepting = false;
 
index 8076c82971c49efeb699490c1178a9a77b780455..8dfb769606dfa2022f3355163f34fc551a530bd7 100644 (file)
@@ -699,8 +699,7 @@ cfg_acl_fromconfig(const cfg_obj_t *acl_data, const cfg_obj_t *cctx,
                                transports = isc_nm_httpsocket;
                                encrypted = false;
                        } else {
-                               result = ISC_R_FAILURE;
-                               goto cleanup;
+                               CHECK(ISC_R_FAILURE);
                        }
                }
 
@@ -762,11 +761,8 @@ cfg_acl_fromconfig(const cfg_obj_t *acl_data, const cfg_obj_t *cctx,
                         * the nestedacl element, not the iptable entry.
                         */
                        setpos = (nest_level != 0 || !neg);
-                       result = dns_iptable_addprefix(iptab, &addr, bitlen,
-                                                      setpos);
-                       if (result != ISC_R_SUCCESS) {
-                               goto cleanup;
-                       }
+                       CHECK(dns_iptable_addprefix(iptab, &addr, bitlen,
+                                                   setpos));
 
                        if (nest_level > 0) {
                                INSIST(dacl->length < dacl->alloc);
@@ -785,11 +781,8 @@ cfg_acl_fromconfig(const cfg_obj_t *acl_data, const cfg_obj_t *cctx,
                        if (inneracl != NULL) {
                                dns_acl_detach(&inneracl);
                        }
-                       result = cfg_acl_fromconfig(ce, cctx, ctx, mctx,
-                                                   new_nest_level, &inneracl);
-                       if (result != ISC_R_SUCCESS) {
-                               goto cleanup;
-                       }
+                       CHECK(cfg_acl_fromconfig(ce, cctx, ctx, mctx,
+                                                new_nest_level, &inneracl));
                nested_acl:
                        if (nest_level > 0 || inneracl->has_negatives) {
                                INSIST(dacl->length < dacl->alloc);
@@ -822,19 +815,13 @@ cfg_acl_fromconfig(const cfg_obj_t *acl_data, const cfg_obj_t *cctx,
                        de->type = dns_aclelementtype_keyname;
                        de->negative = neg;
                        dns_name_init(&de->keyname);
-                       result = convert_keyname(ce, mctx, &de->keyname);
-                       if (result != ISC_R_SUCCESS) {
-                               goto cleanup;
-                       }
+                       CHECK(convert_keyname(ce, mctx, &de->keyname));
 #if defined(HAVE_GEOIP2)
                } else if (cfg_obj_istuple(ce) &&
                           cfg_obj_isvoid(cfg_tuple_get(ce, "negated")))
                {
                        INSIST(dacl->length < dacl->alloc);
-                       result = parse_geoip_element(ce, ctx, de);
-                       if (result != ISC_R_SUCCESS) {
-                               goto cleanup;
-                       }
+                       CHECK(parse_geoip_element(ce, ctx, de));
                        de->type = dns_aclelementtype_geoip;
                        de->negative = neg;
 #endif /* HAVE_GEOIP2 */
@@ -844,11 +831,8 @@ cfg_acl_fromconfig(const cfg_obj_t *acl_data, const cfg_obj_t *cctx,
                        if (strcasecmp(name, "any") == 0) {
                                /* Iptable entry with zero bit length. */
                                setpos = (nest_level != 0 || !neg);
-                               result = dns_iptable_addprefix(iptab, NULL, 0,
-                                                              setpos);
-                               if (result != ISC_R_SUCCESS) {
-                                       goto cleanup;
-                               }
+                               CHECK(dns_iptable_addprefix(iptab, NULL, 0,
+                                                           setpos));
 
                                if (nest_level != 0) {
                                        INSIST(dacl->length < dacl->alloc);
@@ -866,11 +850,8 @@ cfg_acl_fromconfig(const cfg_obj_t *acl_data, const cfg_obj_t *cctx,
                                 * "!none;".
                                 */
                                setpos = (nest_level != 0 || neg);
-                               result = dns_iptable_addprefix(iptab, NULL, 0,
-                                                              setpos);
-                               if (result != ISC_R_SUCCESS) {
-                                       goto cleanup;
-                               }
+                               CHECK(dns_iptable_addprefix(iptab, NULL, 0,
+                                                           setpos));
 
                                if (!neg) {
                                        dacl->has_negatives = !neg;
@@ -899,12 +880,9 @@ cfg_acl_fromconfig(const cfg_obj_t *acl_data, const cfg_obj_t *cctx,
                                 * This call should just find the cached
                                 * of the named acl.
                                 */
-                               result = convert_named_acl(ce, cctx, ctx, mctx,
-                                                          new_nest_level,
-                                                          &inneracl);
-                               if (result != ISC_R_SUCCESS) {
-                                       goto cleanup;
-                               }
+                               CHECK(convert_named_acl(ce, cctx, ctx, mctx,
+                                                       new_nest_level,
+                                                       &inneracl));
 
                                goto nested_acl;
                        }
@@ -912,8 +890,7 @@ cfg_acl_fromconfig(const cfg_obj_t *acl_data, const cfg_obj_t *cctx,
                        cfg_obj_log(ce, ISC_LOG_WARNING,
                                    "address match list contains "
                                    "unsupported element type");
-                       result = ISC_R_FAILURE;
-                       goto cleanup;
+                       CHECK(ISC_R_FAILURE);
                }
 
                /*
index 59d73b3030ff305f92ba4b2d476f06cf6165c73a..8a64bbf24206eed7ef6a21fa9d5dbcd541e78005 100644 (file)
@@ -2892,10 +2892,7 @@ check_recursion(const cfg_obj_t *config, const cfg_obj_t *voptions,
                result = cfg_map_get(goptions, "allow-recursion", &obj);
        }
        if (result == ISC_R_SUCCESS) {
-               result = cfg_acl_fromconfig(obj, config, aclctx, mctx, 0, &acl);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(cfg_acl_fromconfig(obj, config, aclctx, mctx, 0, &acl));
                retval = !dns_acl_isnone(acl);
        }
 
@@ -4913,12 +4910,12 @@ check_trust_anchor(const cfg_obj_t *key, unsigned int *flagsp) {
                            "key '%s': "
                            "invalid initialization method '%s'",
                            namestr, atstr);
-               result = ISC_R_FAILURE;
                /*
                 * We can't interpret the trust anchor, so
                 * we skip all other checks.
                 */
-               goto cleanup;
+               CHECK(ISC_R_FAILURE);
+               UNREACHABLE();
        }
 
        switch (anchortype) {
index 3c226899771dda398d212c6d5bdb930c4a1df188..3a42da1997b0450770081b9a849b97f0fc08789a 100644 (file)
@@ -131,12 +131,9 @@ cfg_kaspkey_fromconfig(const cfg_obj_t *config, dns_kasp_t *kasp,
                key->lifetime = 0; /* unlimited */
                key->algorithm = DST_ALG_ECDSA256;
                key->length = -1;
-               result = dns_keystorelist_find(keystorelist,
-                                              DNS_KEYSTORE_KEYDIRECTORY,
-                                              &key->keystore);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(dns_keystorelist_find(keystorelist,
+                                           DNS_KEYSTORE_KEYDIRECTORY,
+                                           &key->keystore));
        } else {
                const char *rolestr = NULL;
                const char *keydir = NULL;
@@ -158,8 +155,7 @@ cfg_kaspkey_fromconfig(const cfg_obj_t *config, dns_kasp_t *kasp,
                                                    "allowed when offline-ksk "
                                                    "is enabled");
                                }
-                               result = ISC_R_FAILURE;
-                               goto cleanup;
+                               CHECK(ISC_R_FAILURE);
                        }
                        key->role |= DNS_KASP_KEY_ROLE_KSK;
                        key->role |= DNS_KASP_KEY_ROLE_ZSK;
@@ -181,16 +177,14 @@ cfg_kaspkey_fromconfig(const cfg_obj_t *config, dns_kasp_t *kasp,
                                            "not exist",
                                            keydir);
                        }
-                       result = ISC_R_FAILURE;
-                       goto cleanup;
+                       CHECK(ISC_R_FAILURE);
                } else if (result != ISC_R_SUCCESS) {
                        if (log_errors) {
                                cfg_obj_log(obj, ISC_LOG_ERROR,
                                            "dnssec-policy: bad keystore %s",
                                            keydir);
                        }
-                       result = ISC_R_FAILURE;
-                       goto cleanup;
+                       CHECK(ISC_R_FAILURE);
                }
                INSIST(key->keystore != NULL);
 
@@ -227,8 +221,7 @@ cfg_kaspkey_fromconfig(const cfg_obj_t *config, dns_kasp_t *kasp,
                                                    "takes to "
                                                    "do a rollover");
                                }
-                               result = ISC_R_FAILURE;
-                               goto cleanup;
+                               CHECK(ISC_R_FAILURE);
                        }
                }
 
@@ -243,8 +236,7 @@ cfg_kaspkey_fromconfig(const cfg_obj_t *config, dns_kasp_t *kasp,
                                            "dnssec-policy: bad algorithm %s",
                                            alg.base);
                        }
-                       result = DNS_R_BADALG;
-                       goto cleanup;
+                       CHECK(DNS_R_BADALG);
                }
                if (check_algorithms && isc_crypto_fips_mode() &&
                    (key->algorithm == DST_ALG_RSASHA1 ||
@@ -257,8 +249,7 @@ cfg_kaspkey_fromconfig(const cfg_obj_t *config, dns_kasp_t *kasp,
                                            "in FIPS mode",
                                            alg.base);
                        }
-                       result = DNS_R_BADALG;
-                       goto cleanup;
+                       CHECK(DNS_R_BADALG);
                }
 
                if (check_algorithms &&
@@ -270,8 +261,7 @@ cfg_kaspkey_fromconfig(const cfg_obj_t *config, dns_kasp_t *kasp,
                                            "supported",
                                            alg.base);
                        }
-                       result = DNS_R_BADALG;
-                       goto cleanup;
+                       CHECK(DNS_R_BADALG);
                }
 
                switch (key->algorithm) {
@@ -316,8 +306,7 @@ cfg_kaspkey_fromconfig(const cfg_obj_t *config, dns_kasp_t *kasp,
                                                            "key length %u",
                                                            alg.base, size);
                                        }
-                                       result = ISC_R_RANGE;
-                                       goto cleanup;
+                                       CHECK(ISC_R_RANGE);
                                }
                                break;
                        case DST_ALG_ECDSA256:
@@ -351,8 +340,7 @@ cfg_kaspkey_fromconfig(const cfg_obj_t *config, dns_kasp_t *kasp,
                                                    "dnssec-policy: tag-min "
                                                    "too big");
                                }
-                               result = ISC_R_RANGE;
-                               goto cleanup;
+                               CHECK(ISC_R_RANGE);
                        }
                        obj = cfg_tuple_get(tagrange, "tag-max");
                        tag_max = cfg_obj_asuint32(obj);
@@ -362,8 +350,7 @@ cfg_kaspkey_fromconfig(const cfg_obj_t *config, dns_kasp_t *kasp,
                                                    "dnssec-policy: tag-max "
                                                    "too big");
                                }
-                               result = ISC_R_RANGE;
-                               goto cleanup;
+                               CHECK(ISC_R_RANGE);
                        }
                        if (tag_min >= tag_max) {
                                if (log_errors) {
@@ -371,8 +358,7 @@ cfg_kaspkey_fromconfig(const cfg_obj_t *config, dns_kasp_t *kasp,
                                                    "dnssec-policy: tag-min >= "
                                                    "tag_max");
                                }
-                               result = ISC_R_RANGE;
-                               goto cleanup;
+                               CHECK(ISC_R_RANGE);
                        }
                        key->tag_min = tag_min;
                        key->tag_max = tag_max;
@@ -688,11 +674,8 @@ cfg_kasp_fromconfig(const cfg_obj_t *config, dns_kasp_t *default_kasp,
        (void)confget(maps, "cds-digest-types", &cds);
        if (cds != NULL) {
                CFG_LIST_FOREACH(cds, element) {
-                       result = add_digest(kasp, cfg_listelt_value(element),
-                                           log_errors);
-                       if (result != ISC_R_SUCCESS) {
-                               goto cleanup;
-                       }
+                       CHECK(add_digest(kasp, cfg_listelt_value(element),
+                                        log_errors));
                }
        } else {
                dns_kasp_adddigest(kasp, DNS_DSDIGEST_SHA256);
@@ -852,10 +835,7 @@ cfg_kasp_fromconfig(const cfg_obj_t *config, dns_kasp_t *default_kasp,
                }
        } else {
                dns_kasp_setnsec3(kasp, true);
-               result = cfg_nsec3param_fromconfig(nsec3, kasp, log_errors);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(cfg_nsec3param_fromconfig(nsec3, kasp, log_errors));
        }
 
        /* Append it to the list for future lookups. */
@@ -941,12 +921,9 @@ cfg_kasp_builtinconfig(isc_mem_t *mctx, const char *name,
                new_key->lifetime = 0;
                new_key->algorithm = DST_ALG_ECDSA256;
                new_key->length = 256;
-               result = dns_keystorelist_find(keystorelist,
-                                              DNS_KEYSTORE_KEYDIRECTORY,
-                                              &new_key->keystore);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(dns_keystorelist_find(keystorelist,
+                                           DNS_KEYSTORE_KEYDIRECTORY,
+                                           &new_key->keystore));
                dns_kasp_addkey(kasp, new_key);
        }
 
index 0d12b7d624377b506433caca829b4498350833ae..bbc4d4f1001078d3606602f757d01517a9c73681 100644 (file)
@@ -1802,8 +1802,7 @@ parse_dtout(cfg_parser_t *pctx, const cfg_type_t *type, cfg_obj_t **ret) {
                        } else {
                                cfg_parser_error(pctx, CFG_LOG_NEAR,
                                                 "unexpected token");
-                               result = ISC_R_UNEXPECTEDTOKEN;
-                               goto cleanup;
+                               CHECK(ISC_R_UNEXPECTEDTOKEN);
                        }
                } else {
                        break;
@@ -1975,8 +1974,7 @@ cfg_parse_kv_tuple(cfg_parser_t *pctx, const cfg_type_t *type,
                        if (f->name == NULL) {
                                cfg_parser_error(pctx, 0, "unexpected '%s'",
                                                 TOKEN_STRING(pctx));
-                               result = ISC_R_UNEXPECTEDTOKEN;
-                               goto cleanup;
+                               CHECK(ISC_R_UNEXPECTEDTOKEN);
                        }
                        if (obj->value.tuple[fn] == NULL &&
                            strcasecmp(f->name, TOKEN_STRING(pctx)) == 0)
@@ -3164,8 +3162,7 @@ parse_sizeval(cfg_parser_t *pctx, const cfg_type_t *type, cfg_obj_t **ret) {
 
        CHECK(cfg_gettoken(pctx, 0));
        if (pctx->token.type != isc_tokentype_string) {
-               result = ISC_R_UNEXPECTEDTOKEN;
-               goto cleanup;
+               CHECK(ISC_R_UNEXPECTEDTOKEN);
        }
        CHECK(parse_unitstring(TOKEN_STRING(pctx), &val));
 
@@ -3194,8 +3191,7 @@ parse_sizeval_percent(cfg_parser_t *pctx, const cfg_type_t *type,
 
        CHECK(cfg_gettoken(pctx, 0));
        if (pctx->token.type != isc_tokentype_string) {
-               result = ISC_R_UNEXPECTEDTOKEN;
-               goto cleanup;
+               CHECK(ISC_R_UNEXPECTEDTOKEN);
        }
 
        percent = strtoull(TOKEN_STRING(pctx), &endp, 10);
@@ -3348,8 +3344,7 @@ parse_maybe_optional_keyvalue(cfg_parser_t *pctx, const cfg_type_t *type,
                } else {
                        cfg_parser_error(pctx, CFG_LOG_NEAR, "expected '%s'",
                                         kw->name);
-                       result = ISC_R_UNEXPECTEDTOKEN;
-                       goto cleanup;
+                       CHECK(ISC_R_UNEXPECTEDTOKEN);
                }
        }
 
index 0c6a6f5694d06e00def19041732519c1646741fd..8385767c6df83599ba942e99df48fd81703d80f2 100644 (file)
@@ -1335,8 +1335,7 @@ cfg_parse_duration(cfg_parser_t *pctx, const cfg_type_t *type ISC_ATTR_UNUSED,
 
        CHECK(cfg_gettoken(pctx, 0));
        if (pctx->token.type != isc_tokentype_string) {
-               result = ISC_R_UNEXPECTEDTOKEN;
-               goto cleanup;
+               CHECK(ISC_R_UNEXPECTEDTOKEN);
        }
 
        return parse_duration(pctx, ret);
@@ -1357,8 +1356,7 @@ cfg_parse_duration_or_unlimited(cfg_parser_t *pctx,
 
        CHECK(cfg_gettoken(pctx, 0));
        if (pctx->token.type != isc_tokentype_string) {
-               result = ISC_R_UNEXPECTEDTOKEN;
-               goto cleanup;
+               CHECK(ISC_R_UNEXPECTEDTOKEN);
        }
 
        if (strcmp(TOKEN_STRING(pctx), "unlimited") == 0) {
@@ -3008,8 +3006,7 @@ parse_token(cfg_parser_t *pctx, const cfg_type_t *type ISC_ATTR_UNUSED,
        CHECK(cfg_gettoken(pctx, CFG_LEXOPT_QSTRING));
        if (pctx->token.type == isc_tokentype_eof) {
                cfg_ungettoken(pctx);
-               result = ISC_R_EOF;
-               goto cleanup;
+               CHECK(ISC_R_EOF);
        }
 
        isc_lex_getlasttokentext(pctx->lexer, &pctx->token, &r);
@@ -3064,8 +3061,7 @@ parse_unsupported(cfg_parser_t *pctx, const cfg_type_t *type, cfg_obj_t **ret) {
                if (pctx->token.type == isc_tokentype_eof || braces < 0) {
                        cfg_parser_error(pctx, CFG_LOG_NEAR,
                                         "unexpected token");
-                       result = ISC_R_UNEXPECTEDTOKEN;
-                       goto cleanup;
+                       CHECK(ISC_R_UNEXPECTEDTOKEN);
                }
 
                CHECK(cfg_parse_listelt(pctx, listobj, &cfg_type_token, &elt));
@@ -3514,25 +3510,21 @@ parse_sockaddrsub(cfg_parser_t *pctx, const cfg_type_t *type, int flags,
 
        if (have_address != 1) {
                cfg_parser_error(pctx, 0, "expected exactly one address");
-               result = ISC_R_UNEXPECTEDTOKEN;
-               goto cleanup;
+               CHECK(ISC_R_UNEXPECTEDTOKEN);
        }
 
        if (!is_port_ok && have_port > 0) {
                cfg_parser_error(pctx, 0, "subconfig 'port' no longer exists");
-               result = ISC_R_UNEXPECTEDTOKEN;
-               goto cleanup;
+               CHECK(ISC_R_UNEXPECTEDTOKEN);
        }
        if (have_port > 1) {
                cfg_parser_error(pctx, 0, "expected at most one port");
-               result = ISC_R_UNEXPECTEDTOKEN;
-               goto cleanup;
+               CHECK(ISC_R_UNEXPECTEDTOKEN);
        }
 
        if (have_tls > 1) {
                cfg_parser_error(pctx, 0, "expected at most one tls");
-               result = ISC_R_UNEXPECTEDTOKEN;
-               goto cleanup;
+               CHECK(ISC_R_UNEXPECTEDTOKEN);
        }
 
        cfg_obj_create(pctx->mctx, cfg_parser_currentfile(pctx), pctx->line,
index dcb974b4cff93211f0f1199a4f0d33e6c8b07649..a99857bed4dc91eebcf3ef6c8249b3575762d0cb 100644 (file)
@@ -610,10 +610,7 @@ ns_client_send(ns_client_t *client) {
         * Create an OPT for our reply.
         */
        if ((client->inner.attributes & NS_CLIENTATTR_WANTOPT) != 0) {
-               result = ns_client_addopt(client, client->message);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(ns_client_addopt(client, client->message));
                opt_included = true;
        }
 
@@ -642,10 +639,7 @@ ns_client_send(ns_client_t *client) {
        dns_compress_init(&cctx, client->manager->mctx, compflags);
        cleanup_cctx = true;
 
-       result = dns_message_renderbegin(client->message, &cctx, &buffer);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_message_renderbegin(client->message, &cctx, &buffer));
 
        result = dns_message_rendersection(client->message,
                                           DNS_SECTION_QUESTION, 0);
@@ -689,10 +683,7 @@ ns_client_send(ns_client_t *client) {
                goto cleanup;
        }
 renderend:
-       result = dns_message_renderend(client->message);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_message_renderend(client->message));
 
 #ifdef HAVE_DNSTAP
        memset(&zr, 0, sizeof(zr));
index 22a3a9caa5e0d40fd16a1a5b1e18c6f8ecb30e24..a5ee19f3542840ba717adda90b3a90ae5c7fe13f 100644 (file)
@@ -2745,10 +2745,7 @@ stale_refresh_aftermath(ns_client_t *client, isc_result_t result) {
                        dns_clientinfo_setecs(&ci, &qctx.client->inner.ecs);
                }
 
-               result = qctx_prepare_buffers(&qctx, &buffer);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(qctx_prepare_buffers(&qctx, &buffer));
 
                dboptions = qctx.client->query.dboptions;
                dboptions |= DNS_DBFIND_STALEOK;
@@ -4161,12 +4158,9 @@ rpz_rewrite(ns_client_t *client, dns_rdatatype_t qtype, isc_result_t qresult,
                        if (zbits != 0) {
                                isc_netaddr_fromsockaddr(
                                        &netaddr, &client->inner.peeraddr);
-                               result = rpz_rewrite_ip(client, &netaddr, qtype,
-                                                       DNS_RPZ_TYPE_CLIENT_IP,
-                                                       zbits, &rdataset);
-                               if (result != ISC_R_SUCCESS) {
-                                       goto cleanup;
-                               }
+                               CHECK(rpz_rewrite_ip(client, &netaddr, qtype,
+                                                    DNS_RPZ_TYPE_CLIENT_IP,
+                                                    zbits, &rdataset));
                        }
                }
 
@@ -4176,12 +4170,9 @@ rpz_rewrite(ns_client_t *client, dns_rdatatype_t qtype, isc_result_t qresult,
                 * There is a first time for each name in a CNAME chain
                 */
                if ((st->state & DNS_RPZ_DONE_QNAME) == 0) {
-                       result = rpz_rewrite_name(client, client->query.qname,
-                                                 qtype, DNS_RPZ_TYPE_QNAME,
-                                                 allowed, &rdataset);
-                       if (result != ISC_R_SUCCESS) {
-                               goto cleanup;
-                       }
+                       CHECK(rpz_rewrite_name(client, client->query.qname,
+                                              qtype, DNS_RPZ_TYPE_QNAME,
+                                              allowed, &rdataset));
 
                        /*
                         * Check IPv4 addresses in A RRs next.
@@ -4226,12 +4217,9 @@ rpz_rewrite(ns_client_t *client, dns_rdatatype_t qtype, isc_result_t qresult,
            qresult_type == qresult_type_done &&
            rpz_get_zbits(client, qtype, DNS_RPZ_TYPE_IP) != 0)
        {
-               result = rpz_rewrite_ip_rrsets(client, client->query.qname,
-                                              qtype, DNS_RPZ_TYPE_IP,
-                                              &rdataset, resuming);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(rpz_rewrite_ip_rrsets(client, client->query.qname, qtype,
+                                           DNS_RPZ_TYPE_IP, &rdataset,
+                                           resuming));
                /*
                 * We are finished checking the IP addresses for the qname.
                 * Start with IPv4 if we will check NS IP addresses.
@@ -4286,10 +4274,7 @@ rpz_rewrite(ns_client_t *client, dns_rdatatype_t qtype, isc_result_t qresult,
                                was_glue = true;
                                FALLTHROUGH;
                        case ISC_R_SUCCESS:
-                               result = dns_rdataset_first(st->r.ns_rdataset);
-                               if (result != ISC_R_SUCCESS) {
-                                       goto cleanup;
-                               }
+                               CHECK(dns_rdataset_first(st->r.ns_rdataset));
                                st->state &= ~(DNS_RPZ_DONE_NSDNAME |
                                               DNS_RPZ_DONE_IPv4);
                                break;
@@ -4698,20 +4683,11 @@ dns64_ttl(dns_db_t *db, dns_dbversion_t *version) {
 
        dns_rdataset_init(&rdataset);
 
-       result = dns_db_getoriginnode(db, &node);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_db_getoriginnode(db, &node));
 
-       result = dns_db_findrdataset(db, node, version, dns_rdatatype_soa, 0, 0,
-                                    &rdataset, NULL);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
-       result = dns_rdataset_first(&rdataset);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_db_findrdataset(db, node, version, dns_rdatatype_soa, 0, 0,
+                                 &rdataset, NULL));
+       CHECK(dns_rdataset_first(&rdataset));
 
        dns_rdataset_current(&rdataset, &rdata);
        result = dns_rdata_tostruct(&rdata, &soa, NULL);
@@ -6757,10 +6733,7 @@ ns_query_hookasync(query_ctx_t *qctx, ns_query_starthookasync_t runasync,
        REQUIRE(client->query.hookasyncctx == NULL);
        REQUIRE(FETCH_RECTYPE_NORMAL(client) == NULL);
 
-       result = acquire_recursionquota(client);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(acquire_recursionquota(client));
 
        qctx_save(qctx, &saved_qctx);
        result = runasync(saved_qctx, client->manager->mctx, arg,
@@ -8269,14 +8242,11 @@ query_dns64(query_ctx_t *qctx) {
                flags |= DNS_DNS64_RECURSIVE;
        }
 
-       result = dns_dns64_apply(client->manager->mctx, view->dns64,
-                                view->dns64cnt, client->message,
-                                client->manager->aclenv,
-                                &client->inner.peeraddr, client->inner.signer,
-                                flags, qctx->rdataset, &dns64_rdataset);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_dns64_apply(client->manager->mctx, view->dns64,
+                             view->dns64cnt, client->message,
+                             client->manager->aclenv, &client->inner.peeraddr,
+                             client->inner.signer, flags, qctx->rdataset,
+                             &dns64_rdataset));
 
        dns_rdataset_setownercase(dns64_rdataset, mname);
        client->query.attributes |= NS_QUERYATTR_NOADDITIONAL;
@@ -9882,14 +9852,11 @@ query_coveringnsec(query_ctx_t *qctx) {
                 * Look for SOA record to construct NODATA response.
                 */
                dns_db_attach(qctx->db, &db);
-               result = dns_db_findext(db, signer, qctx->version,
-                                       dns_rdatatype_soa, dboptions,
-                                       qctx->client->inner.now, &node, fname,
-                                       &cm, &ci, soardataset, sigsoardataset);
+               CHECK(dns_db_findext(db, signer, qctx->version,
+                                    dns_rdatatype_soa, dboptions,
+                                    qctx->client->inner.now, &node, fname, &cm,
+                                    &ci, soardataset, sigsoardataset));
 
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
                (void)query_synthnodata(qctx, signer, &soardataset,
                                        &sigsoardataset);
                done = true;
@@ -10005,13 +9972,10 @@ query_coveringnsec(query_ctx_t *qctx) {
        /*
         * Look for SOA record to construct NXDOMAIN response.
         */
-       result = dns_db_findext(db, signer, qctx->version, dns_rdatatype_soa,
-                               dboptions, qctx->client->inner.now, &node,
-                               fname, &cm, &ci, soardataset, sigsoardataset);
+       CHECK(dns_db_findext(db, signer, qctx->version, dns_rdatatype_soa,
+                            dboptions, qctx->client->inner.now, &node, fname,
+                            &cm, &ci, soardataset, sigsoardataset));
 
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
        (void)query_synthnxdomainnodata(qctx, exists, nowild, &rdataset,
                                        &sigrdataset, signer, &soardataset,
                                        &sigsoardataset);
@@ -10738,12 +10702,11 @@ query_addbestns(query_ctx_t *qctx) {
         * Find the right database.
         */
        do {
-               result = query_getdb(client, &qname, dns_rdatatype_ns,
-                                    (dns_getdb_options_t){ 0 }, &zone, &db,
-                                    &version, &is_zone);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(query_getdb(client, &qname, dns_rdatatype_ns,
+                                 (dns_getdb_options_t){
+                                         0,
+                                 },
+                                 &zone, &db, &version, &is_zone));
 
                /*
                 * If this is a static stub zone look for a parent zone.
@@ -11152,10 +11115,7 @@ again:
                /*
                 * Add the no wildcard proof.
                 */
-               result = dns_name_concatenate(dns_wildcardname, cname, wname);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               CHECK(dns_name_concatenate(dns_wildcardname, cname, wname));
 
                query_findclosestnsec3(wname, qctx->db, qctx->version, client,
                                       rdataset, sigrdataset, fname, nodata,
index 55117d1408d00484a4a658192af61ef1aff81813..359077e58a6c226c724082eb5ccb1c6e636a6cca 100644 (file)
@@ -93,16 +93,9 @@ setup_server(void **state) {
 
        ns_server_create(isc_g_mctx, matchview, &sctx);
 
-       result = dns_dispatchmgr_create(isc_g_mctx, &dispatchmgr);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
-
-       result = ns_interfacemgr_create(isc_g_mctx, sctx, dispatchmgr, NULL,
-                                       &interfacemgr);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       CHECK(dns_dispatchmgr_create(isc_g_mctx, &dispatchmgr));
+       CHECK(ns_interfacemgr_create(isc_g_mctx, sctx, dispatchmgr, NULL,
+                                    &interfacemgr));
 
        isc_loop_setup(isc_loop_main(), scan_interfaces, NULL);