]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
Cleanup dns_message_gettemp*() functions - they cannot fail
authorOndřej Surý <ondrej@isc.org>
Mon, 16 May 2022 11:28:13 +0000 (13:28 +0200)
committerOndřej Surý <ondrej@isc.org>
Tue, 17 May 2022 10:39:25 +0000 (12:39 +0200)
The dns_message_gettempname(), dns_message_gettemprdata(),
dns_message_gettemprdataset(), and dns_message_gettemprdatalist() always
succeeds because the memory allocation cannot fail now.  Change the API
to return void and cleanup all the use of aforementioned functions.

18 files changed:
bin/dig/dighost.c
bin/nsupdate/nsupdate.c
bin/tests/system/pipelined/pipequeries.c
bin/tools/mdig.c
cocci/dns_message_gettemp.disabled [new file with mode: 0644]
lib/dns/dnssec.c
lib/dns/include/dns/message.h
lib/dns/message.c
lib/dns/rbtdb.c
lib/dns/resolver.c
lib/dns/tkey.c
lib/dns/tsig.c
lib/dns/xfrin.c
lib/dns/zone.c
lib/ns/client.c
lib/ns/query.c
lib/ns/tests/nstest.c
lib/ns/xfrout.c

index 1c58c4b88e47ed4aa24efe9a17764ed5a5809733..da6ce83de94fed6eb4440b3c535738b2ca0d905d 100644 (file)
@@ -1512,12 +1512,10 @@ static void
 add_question(dns_message_t *message, dns_name_t *name, dns_rdataclass_t rdclass,
             dns_rdatatype_t rdtype) {
        dns_rdataset_t *rdataset;
-       isc_result_t result;
 
        debug("add_question()");
        rdataset = NULL;
-       result = dns_message_gettemprdataset(message, &rdataset);
-       check_result(result, "dns_message_gettemprdataset()");
+       dns_message_gettemprdataset(message, &rdataset);
        dns_rdataset_makequestion(rdataset, rdclass, rdtype);
        ISC_LIST_APPEND(name->list, rdataset, link);
 }
@@ -2106,18 +2104,15 @@ insert_soa(dig_lookup_t *lookup) {
        isc_buffer_init(&lookup->rdatabuf, lookup->rdatastore,
                        sizeof(lookup->rdatastore));
 
-       result = dns_message_gettemprdata(lookup->sendmsg, &rdata);
-       check_result(result, "dns_message_gettemprdata");
+       dns_message_gettemprdata(lookup->sendmsg, &rdata);
 
        result = dns_rdata_fromstruct(rdata, lookup->rdclass, dns_rdatatype_soa,
                                      &soa, &lookup->rdatabuf);
        check_result(result, "isc_rdata_fromstruct");
 
-       result = dns_message_gettemprdatalist(lookup->sendmsg, &rdatalist);
-       check_result(result, "dns_message_gettemprdatalist");
+       dns_message_gettemprdatalist(lookup->sendmsg, &rdatalist);
 
-       result = dns_message_gettemprdataset(lookup->sendmsg, &rdataset);
-       check_result(result, "dns_message_gettemprdataset");
+       dns_message_gettemprdataset(lookup->sendmsg, &rdataset);
 
        dns_rdatalist_init(rdatalist);
        rdatalist->type = dns_rdatatype_soa;
@@ -2126,8 +2121,7 @@ insert_soa(dig_lookup_t *lookup) {
 
        dns_rdatalist_tordataset(rdatalist, rdataset);
 
-       result = dns_message_gettempname(lookup->sendmsg, &soaname);
-       check_result(result, "dns_message_gettempname");
+       dns_message_gettempname(lookup->sendmsg, &soaname);
        dns_name_clone(lookup->name, soaname);
        ISC_LIST_INIT(soaname->list);
        ISC_LIST_APPEND(soaname->list, rdataset, link);
@@ -2222,8 +2216,7 @@ setup_lookup(dig_lookup_t *lookup) {
                debug("cloning server list");
                clone_server_list(server_list, &lookup->my_server_list);
        }
-       result = dns_message_gettempname(lookup->sendmsg, &lookup->name);
-       check_result(result, "dns_message_gettempname");
+       dns_message_gettempname(lookup->sendmsg, &lookup->name);
 
        isc_buffer_init(&lookup->namebuf, lookup->name_space,
                        sizeof(lookup->name_space));
@@ -2264,9 +2257,7 @@ setup_lookup(dig_lookup_t *lookup) {
 
        if (lookup->origin != NULL) {
                debug("trying origin %s", lookup->origin->origin);
-               result = dns_message_gettempname(lookup->sendmsg,
-                                                &lookup->oname);
-               check_result(result, "dns_message_gettempname");
+               dns_message_gettempname(lookup->sendmsg, &lookup->oname);
                /* XXX Helper funct to conv char* to name? */
                origin = lookup->origin->origin;
 #ifdef HAVE_LIBIDN2
@@ -2334,18 +2325,19 @@ setup_lookup(dig_lookup_t *lookup) {
                        result = dns_name_fromtext(lookup->name, &b,
                                                   dns_rootname, 0,
                                                   &lookup->namebuf);
-               }
-               if (result != ISC_R_SUCCESS) {
-                       dns_message_puttempname(lookup->sendmsg, &lookup->name);
-                       warn("'%s' is not a legal name "
-                            "(%s)",
-                            lookup->textname, isc_result_totext(result));
+                       if (result != ISC_R_SUCCESS) {
+                               dns_message_puttempname(lookup->sendmsg,
+                                                       &lookup->name);
+                               warn("'%s' is not a legal name (%s)",
+                                    lookup->textname,
+                                    isc_result_totext(result));
 #if TARGET_OS_IPHONE
-                       clear_current_lookup();
-                       return (false);
+                               clear_current_lookup();
+                               return (false);
 #else  /* if TARGET_OS_IPHONE */
-                       digexit();
+                               digexit();
 #endif /* if TARGET_OS_IPHONE */
+                       }
                }
        }
        dns_name_format(lookup->name, store, sizeof(store));
index 294ab0a3f19d33c0288220c6ffa1c1e4411dbb6d..0982bd8a9853dcd155bb2b1899f7fd1179749e98 100644 (file)
@@ -1239,8 +1239,7 @@ parse_name(char **cmdlinep, dns_message_t *msg, dns_name_t **namep) {
                return (STATUS_SYNTAX);
        }
 
-       result = dns_message_gettempname(msg, namep);
-       check_result(result, "dns_message_gettempname");
+       dns_message_gettempname(msg, namep);
        isc_buffer_init(&source, word, strlen(word));
        isc_buffer_add(&source, strlen(word));
        result = dns_name_fromtext(*namep, &source, dns_rootname, 0, NULL);
@@ -1374,8 +1373,7 @@ make_prereq(char *cmdline, bool ispositive, bool isrrset) {
                rdatatype = dns_rdatatype_any;
        }
 
-       result = dns_message_gettemprdata(updatemsg, &rdata);
-       check_result(result, "dns_message_gettemprdata");
+       dns_message_gettemprdata(updatemsg, &rdata);
 
        dns_rdata_init(rdata);
 
@@ -1389,10 +1387,8 @@ make_prereq(char *cmdline, bool ispositive, bool isrrset) {
                rdata->flags = DNS_RDATA_UPDATE;
        }
 
-       result = dns_message_gettemprdatalist(updatemsg, &rdatalist);
-       check_result(result, "dns_message_gettemprdatalist");
-       result = dns_message_gettemprdataset(updatemsg, &rdataset);
-       check_result(result, "dns_message_gettemprdataset");
+       dns_message_gettemprdatalist(updatemsg, &rdatalist);
+       dns_message_gettemprdataset(updatemsg, &rdataset);
        rdatalist->type = rdatatype;
        if (ispositive) {
                if (isrrset && rdata->data != NULL) {
@@ -1776,8 +1772,7 @@ update_addordelete(char *cmdline, bool isdelete) {
                return (retval);
        }
 
-       result = dns_message_gettemprdata(updatemsg, &rdata);
-       check_result(result, "dns_message_gettemprdata");
+       dns_message_gettemprdata(updatemsg, &rdata);
 
        dns_rdata_init(rdata);
 
@@ -1939,10 +1934,8 @@ parseclass:
 
 doneparsing:
 
-       result = dns_message_gettemprdatalist(updatemsg, &rdatalist);
-       check_result(result, "dns_message_gettemprdatalist");
-       result = dns_message_gettemprdataset(updatemsg, &rdataset);
-       check_result(result, "dns_message_gettemprdataset");
+       dns_message_gettemprdatalist(updatemsg, &rdatalist);
+       dns_message_gettemprdataset(updatemsg, &rdataset);
        rdatalist->type = rdatatype;
        rdatalist->rdclass = rdataclass;
        rdatalist->covers = rdatatype;
@@ -2033,11 +2026,9 @@ setzone(dns_name_t *zonename) {
        }
 
        if (zonename != NULL) {
-               result = dns_message_gettempname(updatemsg, &name);
-               check_result(result, "dns_message_gettempname");
+               dns_message_gettempname(updatemsg, &name);
                dns_name_clone(zonename, name);
-               result = dns_message_gettemprdataset(updatemsg, &rdataset);
-               check_result(result, "dns_message_gettemprdataset");
+               dns_message_gettemprdataset(updatemsg, &rdataset);
                dns_rdataset_makequestion(rdataset, getzoneclass(),
                                          dns_rdatatype_soa);
                ISC_LIST_INIT(name->list);
@@ -3225,11 +3216,9 @@ start_update(void) {
                soaquery->flags |= DNS_MESSAGEFLAG_RD;
        }
 
-       result = dns_message_gettempname(soaquery, &name);
-       check_result(result, "dns_message_gettempname");
+       dns_message_gettempname(soaquery, &name);
 
-       result = dns_message_gettemprdataset(soaquery, &rdataset);
-       check_result(result, "dns_message_gettemprdataset");
+       dns_message_gettemprdataset(soaquery, &rdataset);
 
        dns_rdataset_makequestion(rdataset, getzoneclass(), dns_rdatatype_soa);
 
index b8e3e3ffec8cb7584761427f5992504a2a13e587..83247564549221a16414fc02c60eb82a9912a78b 100644 (file)
@@ -157,11 +157,9 @@ sendquery(isc_task_t *task) {
        message->rdclass = dns_rdataclass_in;
        message->id = (unsigned short)(random() & 0xFFFF);
 
-       result = dns_message_gettempname(message, &qname);
-       CHECK("dns_message_gettempname", result);
+       dns_message_gettempname(message, &qname);
 
-       result = dns_message_gettemprdataset(message, &qrdataset);
-       CHECK("dns_message_gettemprdataset", result);
+       dns_message_gettemprdataset(message, &qrdataset);
 
        dns_name_clone(dns_fixedname_name(&queryname), qname);
        dns_rdataset_makequestion(qrdataset, dns_rdataclass_in,
index 17221700e7d10430245e0b306b51ff85a8c2bfac..725363d41c709a5a5e01a8082e1a7743da189d85 100644 (file)
@@ -619,11 +619,9 @@ sendquery(struct query *query, isc_task_t *task) {
        message->rdclass = query->rdclass;
        message->id = (unsigned short)(random() & 0xFFFF);
 
-       result = dns_message_gettempname(message, &qname);
-       CHECK("dns_message_gettempname", result);
+       dns_message_gettempname(message, &qname);
 
-       result = dns_message_gettemprdataset(message, &qrdataset);
-       CHECK("dns_message_gettemprdataset", result);
+       dns_message_gettemprdataset(message, &qrdataset);
 
        dns_name_clone(dns_fixedname_name(&queryname), qname);
        dns_rdataset_makequestion(qrdataset, query->rdclass, query->rdtype);
diff --git a/cocci/dns_message_gettemp.disabled b/cocci/dns_message_gettemp.disabled
new file mode 100644 (file)
index 0000000..ed5a711
--- /dev/null
@@ -0,0 +1,155 @@
+@@
+statement S;
+expression V;
+@@
+
+- V =
+  dns_message_gettempname(...);
+- if (V != ISC_R_SUCCESS) S
+
+@@
+statement S;
+expression V;
+@@
+
+- V =
+  dns_message_gettemprdata(...);
+- if (V != ISC_R_SUCCESS) S
+
+@@
+statement S;
+expression V;
+@@
+
+- V =
+  dns_message_gettemprdataset(...);
+- if (V != ISC_R_SUCCESS) S
+
+@@
+statement S;
+expression V;
+@@
+
+- V =
+  dns_message_gettemprdatalist(...);
+- if (V != ISC_R_SUCCESS) S
+
+@@
+@@
+
+- CHECK(
+  dns_message_gettempname(...)
+- )
+
+@@
+@@
+
+- CHECK(
+  dns_message_gettemprdata(...)
+- )
+
+@@
+@@
+
+- CHECK(
+  dns_message_gettemprdataset(...)
+- )
+
+@@
+@@
+
+- CHECK(
+  dns_message_gettemprdatalist(...)
+- )
+
+@@
+@@
+
+- RETERR(
+  dns_message_gettempname(...)
+- )
+
+@@
+@@
+
+- RETERR(
+  dns_message_gettemprdata(...)
+- )
+
+@@
+@@
+
+- RETERR(
+  dns_message_gettemprdataset(...)
+- )
+
+@@
+@@
+
+- RETERR(
+  dns_message_gettemprdatalist(...)
+- )
+
+@@
+expression V;
+@@
+
+- V =
+  dns_message_gettempname(...);
+- check_result(V, ...);
+
+@@
+expression V;
+@@
+
+- V =
+  dns_message_gettemprdata(...);
+- check_result(V, ...);
+
+@@
+expression V;
+@@
+
+- V =
+  dns_message_gettemprdataset(...);
+- check_result(V, ...);
+
+@@
+expression V;
+@@
+
+- V =
+  dns_message_gettemprdatalist(...);
+- check_result(V, ...);
+
+@@
+expression V;
+@@
+
+- V =
+  dns_message_gettempname(...);
+- CHECK(..., V);
+
+@@
+expression V;
+@@
+
+- V =
+  dns_message_gettemprdata(...);
+- CHECK(..., V);
+
+@@
+expression V;
+@@
+
+- V =
+  dns_message_gettemprdataset(...);
+- CHECK(..., V);
+
+@@
+expression V;
+@@
+
+- V =
+  dns_message_gettemprdatalist(...);
+- CHECK(..., V);
index d5d96fc7df6046704cafcdacaf917c179cef893d..769f493bfa01da0e6c3e2053ba1851d958184999 100644 (file)
@@ -1026,7 +1026,7 @@ dns_dnssec_signmessage(dns_message_t *msg, dst_key_t *key) {
        dst_context_destroy(&ctx);
 
        rdata = NULL;
-       RETERR(dns_message_gettemprdata(msg, &rdata));
+       dns_message_gettemprdata(msg, &rdata);
        isc_buffer_allocate(msg->mctx, &dynbuf, 1024);
        RETERR(dns_rdata_fromstruct(rdata, dns_rdataclass_any,
                                    dns_rdatatype_sig /* SIG(0) */, &sig,
@@ -1037,12 +1037,12 @@ dns_dnssec_signmessage(dns_message_t *msg, dst_key_t *key) {
        dns_message_takebuffer(msg, &dynbuf);
 
        datalist = NULL;
-       RETERR(dns_message_gettemprdatalist(msg, &datalist));
+       dns_message_gettemprdatalist(msg, &datalist);
        datalist->rdclass = dns_rdataclass_any;
        datalist->type = dns_rdatatype_sig; /* SIG(0) */
        ISC_LIST_APPEND(datalist->rdata, rdata, link);
        dataset = NULL;
-       RETERR(dns_message_gettemprdataset(msg, &dataset));
+       dns_message_gettemprdataset(msg, &dataset);
        RUNTIME_CHECK(dns_rdatalist_tordataset(datalist, dataset) ==
                      ISC_R_SUCCESS);
        msg->sig0 = dataset;
index a6ec3b86da9d84037ab47a8416bf2e01522b4d4d..c03f7a58a8556c898ed5a620bc0f7ee37aa1445b 100644 (file)
@@ -931,7 +931,7 @@ dns_message_removename(dns_message_t *msg, dns_name_t *name,
  * reset, and must NOT be used after these operations.
  */
 
-isc_result_t
+void
 dns_message_gettempname(dns_message_t *msg, dns_name_t **item);
 /*%<
  * Return a name that can be used for any temporary purpose, including
@@ -946,12 +946,9 @@ dns_message_gettempname(dns_message_t *msg, dns_name_t **item);
  *\li  msg be a valid message
  *
  *\li  item != NULL && *item == NULL
- *
- * Returns:
- *\li  #ISC_R_SUCCESS          -- All is well.
  */
 
-isc_result_t
+void
 dns_message_gettemprdata(dns_message_t *msg, dns_rdata_t **item);
 /*%<
  * Return a rdata that can be used for any temporary purpose, including
@@ -962,12 +959,9 @@ dns_message_gettemprdata(dns_message_t *msg, dns_rdata_t **item);
  *\li  msg be a valid message
  *
  *\li  item != NULL && *item == NULL
- *
- * Returns:
- *\li  #ISC_R_SUCCESS          -- All is well.
  */
 
-isc_result_t
+void
 dns_message_gettemprdataset(dns_message_t *msg, dns_rdataset_t **item);
 /*%<
  * Return a rdataset that can be used for any temporary purpose, including
@@ -979,12 +973,9 @@ dns_message_gettemprdataset(dns_message_t *msg, dns_rdataset_t **item);
  *\li  msg be a valid message
  *
  *\li  item != NULL && *item == NULL
- *
- * Returns:
- *\li  #ISC_R_SUCCESS          -- All is well.
  */
 
-isc_result_t
+void
 dns_message_gettemprdatalist(dns_message_t *msg, dns_rdatalist_t **item);
 /*%<
  * Return a rdatalist that can be used for any temporary purpose, including
@@ -995,9 +986,6 @@ dns_message_gettemprdatalist(dns_message_t *msg, dns_rdatalist_t **item);
  *\li  msg be a valid message
  *
  *\li  item != NULL && *item == NULL
- *
- * Returns:
- *\li  #ISC_R_SUCCESS          -- All is well.
  */
 
 void
index afb5959bef43c348340e89f7df958dca641b3be6..d89c4f8301318288a3a6ed3c12e34e8e0081ca2f 100644 (file)
@@ -978,10 +978,7 @@ getquestions(isc_buffer_t *source, dns_message_t *msg, dns_decompress_t *dctx,
 
        for (count = 0; count < msg->counts[DNS_SECTION_QUESTION]; count++) {
                name = NULL;
-               result = dns_message_gettempname(msg, &name);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               dns_message_gettempname(msg, &name);
                name->offsets = (unsigned char *)newoffsets(msg);
                free_name = true;
 
@@ -1209,10 +1206,7 @@ getsection(isc_buffer_t *source, dns_message_t *msg, dns_decompress_t *dctx,
                istsig = false;
 
                name = NULL;
-               result = dns_message_gettempname(msg, &name);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               dns_message_gettempname(msg, &name);
                name->offsets = (unsigned char *)newoffsets(msg);
                free_name = true;
 
@@ -2529,7 +2523,7 @@ dns_message_removename(dns_message_t *msg, dns_name_t *name,
        ISC_LIST_UNLINK(msg->sections[section], name, link);
 }
 
-isc_result_t
+void
 dns_message_gettempname(dns_message_t *msg, dns_name_t **item) {
        dns_fixedname_t *fn = NULL;
 
@@ -2538,36 +2532,31 @@ dns_message_gettempname(dns_message_t *msg, dns_name_t **item) {
 
        fn = isc_mempool_get(msg->namepool);
        *item = dns_fixedname_initname(fn);
-
-       return (ISC_R_SUCCESS);
 }
 
-isc_result_t
+void
 dns_message_gettemprdata(dns_message_t *msg, dns_rdata_t **item) {
        REQUIRE(DNS_MESSAGE_VALID(msg));
        REQUIRE(item != NULL && *item == NULL);
 
        *item = newrdata(msg);
-       return (ISC_R_SUCCESS);
 }
 
-isc_result_t
+void
 dns_message_gettemprdataset(dns_message_t *msg, dns_rdataset_t **item) {
        REQUIRE(DNS_MESSAGE_VALID(msg));
        REQUIRE(item != NULL && *item == NULL);
 
        *item = isc_mempool_get(msg->rdspool);
        dns_rdataset_init(*item);
-       return (ISC_R_SUCCESS);
 }
 
-isc_result_t
+void
 dns_message_gettemprdatalist(dns_message_t *msg, dns_rdatalist_t **item) {
        REQUIRE(DNS_MESSAGE_VALID(msg));
        REQUIRE(item != NULL && *item == NULL);
 
        *item = newrdatalist(msg);
-       return (ISC_R_SUCCESS);
 }
 
 void
@@ -2867,19 +2856,10 @@ dns_message_setquerytsig(dns_message_t *msg, isc_buffer_t *querytsig) {
                return (ISC_R_SUCCESS);
        }
 
-       result = dns_message_gettemprdata(msg, &rdata);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       dns_message_gettemprdata(msg, &rdata);
 
-       result = dns_message_gettemprdatalist(msg, &list);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
-       result = dns_message_gettemprdataset(msg, &set);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       dns_message_gettemprdatalist(msg, &list);
+       dns_message_gettemprdataset(msg, &set);
 
        isc_buffer_usedregion(querytsig, &r);
        isc_buffer_allocate(msg->mctx, &buf, r.length);
@@ -4589,18 +4569,9 @@ dns_message_buildopt(dns_message_t *message, dns_rdataset_t **rdatasetp,
        REQUIRE(DNS_MESSAGE_VALID(message));
        REQUIRE(rdatasetp != NULL && *rdatasetp == NULL);
 
-       result = dns_message_gettemprdatalist(message, &rdatalist);
-       if (result != ISC_R_SUCCESS) {
-               return (result);
-       }
-       result = dns_message_gettemprdata(message, &rdata);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
-       result = dns_message_gettemprdataset(message, &rdataset);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       dns_message_gettemprdatalist(message, &rdatalist);
+       dns_message_gettemprdata(message, &rdata);
+       dns_message_gettemprdataset(message, &rdataset);
 
        rdatalist->type = dns_rdatatype_opt;
 
index a4c9aec6a88efc4d8ac3944510bdf9936a4467ec..75c5d62a4ebcc67c3f85ee2bdb628a7a53a4dd5f 100644 (file)
@@ -9699,7 +9699,6 @@ rdataset_addglue(dns_rdataset_t *rdataset, dns_dbversion_t *version,
        bool restarted = false;
        rbtdb_glue_t *ge;
        rbtdb_glue_additionaldata_ctx_t ctx;
-       isc_result_t result;
        uint64_t hash;
 
        REQUIRE(rdataset->type == dns_rdatatype_ns);
@@ -9772,70 +9771,24 @@ restart:
                dns_rdataset_t *sigrdataset_aaaa = NULL;
                dns_name_t *gluename = dns_fixedname_name(&ge->fixedname);
 
-               result = dns_message_gettempname(msg, &name);
-               if (result != ISC_R_SUCCESS) {
-                       goto no_glue;
-               }
+               dns_message_gettempname(msg, &name);
 
                dns_name_copy(gluename, name);
 
                if (dns_rdataset_isassociated(&ge->rdataset_a)) {
-                       result = dns_message_gettemprdataset(msg, &rdataset_a);
-                       if (result != ISC_R_SUCCESS) {
-                               dns_message_puttempname(msg, &name);
-                               goto no_glue;
-                       }
+                       dns_message_gettemprdataset(msg, &rdataset_a);
                }
 
                if (dns_rdataset_isassociated(&ge->sigrdataset_a)) {
-                       result = dns_message_gettemprdataset(msg,
-                                                            &sigrdataset_a);
-                       if (result != ISC_R_SUCCESS) {
-                               if (rdataset_a != NULL) {
-                                       dns_message_puttemprdataset(
-                                               msg, &rdataset_a);
-                               }
-                               dns_message_puttempname(msg, &name);
-                               goto no_glue;
-                       }
+                       dns_message_gettemprdataset(msg, &sigrdataset_a);
                }
 
                if (dns_rdataset_isassociated(&ge->rdataset_aaaa)) {
-                       result = dns_message_gettemprdataset(msg,
-                                                            &rdataset_aaaa);
-                       if (result != ISC_R_SUCCESS) {
-                               dns_message_puttempname(msg, &name);
-                               if (rdataset_a != NULL) {
-                                       dns_message_puttemprdataset(
-                                               msg, &rdataset_a);
-                               }
-                               if (sigrdataset_a != NULL) {
-                                       dns_message_puttemprdataset(
-                                               msg, &sigrdataset_a);
-                               }
-                               goto no_glue;
-                       }
+                       dns_message_gettemprdataset(msg, &rdataset_aaaa);
                }
 
                if (dns_rdataset_isassociated(&ge->sigrdataset_aaaa)) {
-                       result = dns_message_gettemprdataset(msg,
-                                                            &sigrdataset_aaaa);
-                       if (result != ISC_R_SUCCESS) {
-                               dns_message_puttempname(msg, &name);
-                               if (rdataset_a != NULL) {
-                                       dns_message_puttemprdataset(
-                                               msg, &rdataset_a);
-                               }
-                               if (sigrdataset_a != NULL) {
-                                       dns_message_puttemprdataset(
-                                               msg, &sigrdataset_a);
-                               }
-                               if (rdataset_aaaa != NULL) {
-                                       dns_message_puttemprdataset(
-                                               msg, &rdataset_aaaa);
-                               }
-                               goto no_glue;
-                       }
+                       dns_message_gettemprdataset(msg, &sigrdataset_aaaa);
                }
 
                if (rdataset_a != NULL) {
index 1877dd36dc8f97dadc63cc8ce4a135ce9cdcd2c3..3e04e9894462fad0ef263f9aa2c4c6a8a4150aa7 100644 (file)
@@ -2456,14 +2456,8 @@ resquery_send(resquery_t *query) {
                return (ISC_R_SHUTTINGDOWN);
        }
 
-       result = dns_message_gettempname(fctx->qmessage, &qname);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup_temps;
-       }
-       result = dns_message_gettemprdataset(fctx->qmessage, &qrdataset);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup_temps;
-       }
+       dns_message_gettempname(fctx->qmessage, &qname);
+       dns_message_gettemprdataset(fctx->qmessage, &qrdataset);
 
        fctx->qmessage->opcode = dns_opcode_query;
 
@@ -2474,8 +2468,6 @@ resquery_send(resquery_t *query) {
        dns_rdataset_makequestion(qrdataset, res->rdclass, fctx->type);
        ISC_LIST_APPEND(qname->list, qrdataset, link);
        dns_message_addname(fctx->qmessage, qname, DNS_SECTION_QUESTION);
-       qname = NULL;
-       qrdataset = NULL;
 
        /*
         * Set RD if the client has requested that we do a recursive
@@ -2862,14 +2854,6 @@ cleanup_message:
         */
        dns_dispatch_done(&query->dispentry);
 
-cleanup_temps:
-       if (qname != NULL) {
-               dns_message_puttempname(fctx->qmessage, &qname);
-       }
-       if (qrdataset != NULL) {
-               dns_message_puttemprdataset(fctx->qmessage, &qrdataset);
-       }
-
        return (result);
 }
 
index 78d06e5c8adc535f886a6627d4b9d9dce23246d5..edb60eafec5c7fab0e35939d9dac704213106009 100644 (file)
@@ -167,7 +167,7 @@ add_rdata_to_list(dns_message_t *msg, dns_name_t *name, dns_rdata_t *rdata,
        dns_rdataset_t *newset = NULL;
        isc_buffer_t *tmprdatabuf = NULL;
 
-       RETERR(dns_message_gettemprdata(msg, &newrdata));
+       dns_message_gettemprdata(msg, &newrdata);
 
        dns_rdata_toregion(rdata, &r);
        isc_buffer_allocate(msg->mctx, &tmprdatabuf, r.length);
@@ -176,16 +176,16 @@ add_rdata_to_list(dns_message_t *msg, dns_name_t *name, dns_rdata_t *rdata,
        dns_rdata_fromregion(newrdata, rdata->rdclass, rdata->type, &newr);
        dns_message_takebuffer(msg, &tmprdatabuf);
 
-       RETERR(dns_message_gettempname(msg, &newname));
+       dns_message_gettempname(msg, &newname);
        dns_name_copy(name, newname);
 
-       RETERR(dns_message_gettemprdatalist(msg, &newlist));
+       dns_message_gettemprdatalist(msg, &newlist);
        newlist->rdclass = newrdata->rdclass;
        newlist->type = newrdata->type;
        newlist->ttl = ttl;
        ISC_LIST_APPEND(newlist->rdata, newrdata, link);
 
-       RETERR(dns_message_gettemprdataset(msg, &newset));
+       dns_message_gettemprdataset(msg, &newset);
        RETERR(dns_rdatalist_tordataset(newlist, newset));
 
        ISC_LIST_INIT(newname->list);
@@ -960,27 +960,27 @@ buildquery(dns_message_t *msg, const dns_name_t *name, dns_rdata_tkey_t *tkey,
        REQUIRE(name != NULL);
        REQUIRE(tkey != NULL);
 
-       RETERR(dns_message_gettempname(msg, &qname));
-       RETERR(dns_message_gettempname(msg, &aname));
+       dns_message_gettempname(msg, &qname);
+       dns_message_gettempname(msg, &aname);
 
-       RETERR(dns_message_gettemprdataset(msg, &question));
+       dns_message_gettemprdataset(msg, &question);
        dns_rdataset_makequestion(question, dns_rdataclass_any,
                                  dns_rdatatype_tkey);
 
        len = 16 + tkey->algorithm.length + tkey->keylen + tkey->otherlen;
        isc_buffer_allocate(msg->mctx, &dynbuf, len);
-       RETERR(dns_message_gettemprdata(msg, &rdata));
+       dns_message_gettemprdata(msg, &rdata);
 
        RETERR(dns_rdata_fromstruct(rdata, dns_rdataclass_any,
                                    dns_rdatatype_tkey, tkey, dynbuf));
        dns_message_takebuffer(msg, &dynbuf);
 
-       RETERR(dns_message_gettemprdatalist(msg, &tkeylist));
+       dns_message_gettemprdatalist(msg, &tkeylist);
        tkeylist->rdclass = dns_rdataclass_any;
        tkeylist->type = dns_rdatatype_tkey;
        ISC_LIST_APPEND(tkeylist->rdata, rdata, link);
 
-       RETERR(dns_message_gettemprdataset(msg, &tkeyset));
+       dns_message_gettemprdataset(msg, &tkeyset);
        RETERR(dns_rdatalist_tordataset(tkeylist, tkeyset));
 
        dns_name_copy(name, qname);
@@ -1065,7 +1065,7 @@ dns_tkey_builddhquery(dns_message_t *msg, dst_key_t *key,
 
        RETERR(buildquery(msg, name, &tkey, false));
 
-       RETERR(dns_message_gettemprdata(msg, &rdata));
+       dns_message_gettemprdata(msg, &rdata);
        isc_buffer_allocate(msg->mctx, &dynbuf, 1024);
        RETERR(dst_key_todns(key, dynbuf));
        isc_buffer_usedregion(dynbuf, &r);
index 6f61c28194bd785251bd963af2af0a69825aa724..c7536734b93f871a595e5985ca7ffb21a67f6bf8 100644 (file)
@@ -996,10 +996,7 @@ dns_tsig_sign(dns_message_t *msg) {
                tsig.signature = NULL;
        }
 
-       ret = dns_message_gettemprdata(msg, &rdata);
-       if (ret != ISC_R_SUCCESS) {
-               goto cleanup_signature;
-       }
+       dns_message_gettemprdata(msg, &rdata);
        isc_buffer_allocate(msg->mctx, &dynbuf, 512);
        ret = dns_rdata_fromstruct(rdata, dns_rdataclass_any,
                                   dns_rdatatype_tsig, &tsig, dynbuf);
@@ -1014,21 +1011,12 @@ dns_tsig_sign(dns_message_t *msg) {
                tsig.signature = NULL;
        }
 
-       ret = dns_message_gettempname(msg, &owner);
-       if (ret != ISC_R_SUCCESS) {
-               goto cleanup_rdata;
-       }
+       dns_message_gettempname(msg, &owner);
        dns_name_copy(&key->name, owner);
 
-       ret = dns_message_gettemprdatalist(msg, &datalist);
-       if (ret != ISC_R_SUCCESS) {
-               goto cleanup_owner;
-       }
+       dns_message_gettemprdatalist(msg, &datalist);
 
-       ret = dns_message_gettemprdataset(msg, &dataset);
-       if (ret != ISC_R_SUCCESS) {
-               goto cleanup_rdatalist;
-       }
+       dns_message_gettemprdataset(msg, &dataset);
        datalist->rdclass = dns_rdataclass_any;
        datalist->type = dns_rdatatype_tsig;
        ISC_LIST_APPEND(datalist->rdata, rdata, link);
@@ -1042,14 +1030,8 @@ dns_tsig_sign(dns_message_t *msg) {
 
        return (ISC_R_SUCCESS);
 
-cleanup_rdatalist:
-       dns_message_puttemprdatalist(msg, &datalist);
-cleanup_owner:
-       dns_message_puttempname(msg, &owner);
-       goto cleanup_rdata;
 cleanup_dynbuf:
        isc_buffer_free(&dynbuf);
-cleanup_rdata:
        dns_message_puttemprdata(msg, &rdata);
 cleanup_signature:
        if (tsig.signature != NULL) {
index 15cec5c37a050d4c2faf948b43650d92fa480420..2cd2f809419f8b0461adc1498bf605d3b10b5b81 100644 (file)
@@ -1237,21 +1237,21 @@ tuple2msgname(dns_difftuple_t *tuple, dns_message_t *msg, dns_name_t **target) {
 
        REQUIRE(target != NULL && *target == NULL);
 
-       CHECK(dns_message_gettemprdata(msg, &rdata));
+       dns_message_gettemprdata(msg, &rdata);
        dns_rdata_init(rdata);
        dns_rdata_clone(&tuple->rdata, rdata);
 
-       CHECK(dns_message_gettemprdatalist(msg, &rdl));
+       dns_message_gettemprdatalist(msg, &rdl);
        dns_rdatalist_init(rdl);
        rdl->type = tuple->rdata.type;
        rdl->rdclass = tuple->rdata.rdclass;
        rdl->ttl = tuple->ttl;
        ISC_LIST_APPEND(rdl->rdata, rdata, link);
 
-       CHECK(dns_message_gettemprdataset(msg, &rds));
+       dns_message_gettemprdataset(msg, &rds);
        CHECK(dns_rdatalist_tordataset(rdl, rds));
 
-       CHECK(dns_message_gettempname(msg, &name));
+       dns_message_gettempname(msg, &name);
        dns_name_clone(&tuple->name, name);
        ISC_LIST_APPEND(name->list, rds, link);
 
@@ -1295,11 +1295,11 @@ xfrin_send_request(dns_xfrin_ctx_t *xfr) {
        CHECK(dns_message_settsigkey(msg, xfr->tsigkey));
 
        /* Create a name for the question section. */
-       CHECK(dns_message_gettempname(msg, &qname));
+       dns_message_gettempname(msg, &qname);
        dns_name_clone(&xfr->name, qname);
 
        /* Formulate the question and attach it to the question name. */
-       CHECK(dns_message_gettemprdataset(msg, &qrdataset));
+       dns_message_gettemprdataset(msg, &qrdataset);
        dns_rdataset_makequestion(qrdataset, xfr->rdclass, xfr->reqtype);
        ISC_LIST_APPEND(qname->list, qrdataset, link);
        qrdataset = NULL;
index 4293516d0f9af7ee2f1106ea2967d70ca0a8bd03..c9ddc21498212c8c5f1889d6e95ef823df7f1b71 100644 (file)
@@ -936,7 +936,7 @@ static void
 checkds_cancel(dns_zone_t *zone);
 static void
 checkds_send(dns_zone_t *zone);
-static isc_result_t
+static void
 checkds_createmessage(dns_zone_t *zone, dns_message_t **messagep);
 static void
 checkds_done(isc_task_t *task, isc_event_t *event);
@@ -13031,28 +13031,21 @@ cleanup1:
 /***
  *** Private
  ***/
-static isc_result_t
+static void
 create_query(dns_zone_t *zone, dns_rdatatype_t rdtype, dns_name_t *name,
             dns_message_t **messagep) {
        dns_message_t *message = NULL;
        dns_name_t *qname = NULL;
        dns_rdataset_t *qrdataset = NULL;
-       isc_result_t result;
 
        dns_message_create(zone->mctx, DNS_MESSAGE_INTENTRENDER, &message);
 
        message->opcode = dns_opcode_query;
        message->rdclass = zone->rdclass;
 
-       result = dns_message_gettempname(message, &qname);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       dns_message_gettempname(message, &qname);
 
-       result = dns_message_gettemprdataset(message, &qrdataset);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       dns_message_gettemprdataset(message, &qrdataset);
 
        /*
         * Make question.
@@ -13063,17 +13056,6 @@ create_query(dns_zone_t *zone, dns_rdatatype_t rdtype, dns_name_t *name,
        dns_message_addname(message, qname, DNS_SECTION_QUESTION);
 
        *messagep = message;
-       return (ISC_R_SUCCESS);
-
-cleanup:
-       if (qname != NULL) {
-               dns_message_puttempname(message, &qname);
-       }
-       if (qrdataset != NULL) {
-               dns_message_puttemprdataset(message, &qrdataset);
-       }
-       dns_message_detach(&message);
-       return (result);
 }
 
 static isc_result_t
@@ -13387,9 +13369,8 @@ stub_request_nameserver_address(struct stub_cb_args *args, bool ipv4,
        request->ipv4 = ipv4;
        dns_name_dup(name, zone->mctx, &request->name);
 
-       result = create_query(zone, ipv4 ? dns_rdatatype_a : dns_rdatatype_aaaa,
-                             &request->name, &message);
-       INSIST(result == ISC_R_SUCCESS);
+       create_query(zone, ipv4 ? dns_rdatatype_a : dns_rdatatype_aaaa,
+                    &request->name, &message);
 
        if (!DNS_ZONE_FLAG(zone, DNS_ZONEFLG_NOEDNS)) {
                result = add_opt(message, args->udpsize, args->reqnsid, false);
@@ -14629,10 +14610,7 @@ again:
                goto cleanup;
        }
 
-       result = create_query(zone, dns_rdatatype_soa, &zone->origin, &message);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       create_query(zone, dns_rdatatype_soa, &zone->origin, &message);
 
        if (!DNS_ZONE_FLAG(zone, DNS_ZONEFLG_NOEDNS)) {
                result = add_opt(message, udpsize, reqnsid, reqexpire);
@@ -14814,8 +14792,7 @@ ns_query(dns_zone_t *zone, dns_rdataset_t *soardataset, dns_stub_t *stub) {
        /*
         * XXX Optimisation: Create message when zone is setup and reuse.
         */
-       result = create_query(zone, dns_rdatatype_ns, &zone->origin, &message);
-       INSIST(result == ISC_R_SUCCESS);
+       create_query(zone, dns_rdatatype_ns, &zone->origin, &message);
 
        INSIST(zone->primariescnt > 0);
        INSIST(zone->curprimary < zone->primariescnt);
@@ -15341,15 +15318,9 @@ notify_createmessage(dns_zone_t *zone, unsigned int flags,
        message->flags |= DNS_MESSAGEFLAG_AA;
        message->rdclass = zone->rdclass;
 
-       result = dns_message_gettempname(message, &tempname);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       dns_message_gettempname(message, &tempname);
 
-       result = dns_message_gettemprdataset(message, &temprdataset);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       dns_message_gettemprdataset(message, &temprdataset);
 
        /*
         * Make question.
@@ -15366,22 +15337,10 @@ notify_createmessage(dns_zone_t *zone, unsigned int flags,
                goto done;
        }
 
-       result = dns_message_gettempname(message, &tempname);
-       if (result != ISC_R_SUCCESS) {
-               goto soa_cleanup;
-       }
-       result = dns_message_gettemprdata(message, &temprdata);
-       if (result != ISC_R_SUCCESS) {
-               goto soa_cleanup;
-       }
-       result = dns_message_gettemprdataset(message, &temprdataset);
-       if (result != ISC_R_SUCCESS) {
-               goto soa_cleanup;
-       }
-       result = dns_message_gettemprdatalist(message, &temprdatalist);
-       if (result != ISC_R_SUCCESS) {
-               goto soa_cleanup;
-       }
+       dns_message_gettempname(message, &tempname);
+       dns_message_gettemprdata(message, &temprdata);
+       dns_message_gettemprdataset(message, &temprdataset);
+       dns_message_gettemprdatalist(message, &temprdatalist);
 
        ZONEDB_LOCK(&zone->dblock, isc_rwlocktype_read);
        INSIST(zone->db != NULL); /* XXXJT: is this assumption correct? */
@@ -15461,16 +15420,6 @@ soa_cleanup:
 done:
        *messagep = message;
        return (ISC_R_SUCCESS);
-
-cleanup:
-       if (tempname != NULL) {
-               dns_message_puttempname(message, &tempname);
-       }
-       if (temprdataset != NULL) {
-               dns_message_puttemprdataset(message, &temprdataset);
-       }
-       dns_message_detach(&message);
-       return (result);
 }
 
 isc_result_t
@@ -21085,15 +21034,13 @@ checkds_create(isc_mem_t *mctx, unsigned int flags, dns_checkds_t **checkdsp) {
        return (ISC_R_SUCCESS);
 }
 
-static isc_result_t
+static void
 checkds_createmessage(dns_zone_t *zone, dns_message_t **messagep) {
        dns_message_t *message = NULL;
 
        dns_name_t *tempname = NULL;
        dns_rdataset_t *temprdataset = NULL;
 
-       isc_result_t result;
-
        REQUIRE(DNS_ZONE_VALID(zone));
        REQUIRE(messagep != NULL && *messagep == NULL);
 
@@ -21102,15 +21049,9 @@ checkds_createmessage(dns_zone_t *zone, dns_message_t **messagep) {
        message->opcode = dns_opcode_query;
        message->rdclass = zone->rdclass;
 
-       result = dns_message_gettempname(message, &tempname);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       dns_message_gettempname(message, &tempname);
 
-       result = dns_message_gettemprdataset(message, &temprdataset);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       dns_message_gettemprdataset(message, &temprdataset);
 
        /*
         * Make question.
@@ -21125,17 +21066,6 @@ checkds_createmessage(dns_zone_t *zone, dns_message_t **messagep) {
        temprdataset = NULL;
 
        *messagep = message;
-       return (ISC_R_SUCCESS);
-
-cleanup:
-       if (tempname != NULL) {
-               dns_message_puttempname(message, &tempname);
-       }
-       if (temprdataset != NULL) {
-               dns_message_puttemprdataset(message, &temprdataset);
-       }
-       dns_message_detach(&message);
-       return (result);
 }
 
 static void
@@ -21190,10 +21120,7 @@ checkds_send_toaddr(isc_task_t *task, isc_event_t *event) {
                goto cleanup;
        }
 
-       result = checkds_createmessage(checkds->zone, &message);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       checkds_createmessage(checkds->zone, &message);
 
        isc_sockaddr_format(&checkds->dst, addrbuf, sizeof(addrbuf));
        if (checkds->key != NULL) {
index 5a9bfd85c5da866683e2a006c3cd77550795f941..edb89604a6fc954eb17da36041c6d69c554ed768 100644 (file)
@@ -2778,15 +2778,11 @@ ns_client_sourceip(dns_clientinfo_t *ci, isc_sockaddr_t **addrp) {
 dns_rdataset_t *
 ns_client_newrdataset(ns_client_t *client) {
        dns_rdataset_t *rdataset;
-       isc_result_t result;
 
        REQUIRE(NS_CLIENT_VALID(client));
 
        rdataset = NULL;
-       result = dns_message_gettemprdataset(client->message, &rdataset);
-       if (result != ISC_R_SUCCESS) {
-               return (NULL);
-       }
+       dns_message_gettemprdataset(client->message, &rdataset);
 
        return (rdataset);
 }
@@ -2825,18 +2821,12 @@ dns_name_t *
 ns_client_newname(ns_client_t *client, isc_buffer_t *dbuf, isc_buffer_t *nbuf) {
        dns_name_t *name = NULL;
        isc_region_t r;
-       isc_result_t result;
 
        REQUIRE((client->query.attributes & NS_QUERYATTR_NAMEBUFUSED) == 0);
 
        CTRACE("ns_client_newname");
 
-       result = dns_message_gettempname(client->message, &name);
-       if (result != ISC_R_SUCCESS) {
-               CTRACE("ns_client_newname: "
-                      "dns_message_gettempname failed: done");
-               return (NULL);
-       }
+       dns_message_gettempname(client->message, &name);
        isc_buffer_availableregion(dbuf, &r);
        isc_buffer_init(nbuf, r.base, r.length);
        dns_name_setbuffer(name, NULL);
index 1a6c5ccaaa614db6587aa9d7545f75e211880213..5e924438ae812a8595cc391839e2bd53f47dbbaf 100644 (file)
@@ -8352,15 +8352,8 @@ query_dns64(query_ctx_t *qctx) {
        isc_buffer_allocate(client->manager->mctx, &buffer,
                            view->dns64cnt * 16 *
                                    dns_rdataset_count(qctx->rdataset));
-       result = dns_message_gettemprdataset(client->message, &dns64_rdataset);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
-       result = dns_message_gettemprdatalist(client->message,
-                                             &dns64_rdatalist);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       dns_message_gettemprdataset(client->message, &dns64_rdataset);
+       dns_message_gettemprdatalist(client->message, &dns64_rdatalist);
 
        dns_rdatalist_init(dns64_rdatalist);
        dns64_rdatalist->rdclass = dns_rdataclass_in;
@@ -8406,11 +8399,7 @@ query_dns64(query_ctx_t *qctx) {
                        isc_buffer_add(buffer, 16);
                        isc_buffer_remainingregion(buffer, &r);
                        isc_buffer_forward(buffer, 16);
-                       result = dns_message_gettemprdata(client->message,
-                                                         &dns64_rdata);
-                       if (result != ISC_R_SUCCESS) {
-                               goto cleanup;
-                       }
+                       dns_message_gettemprdata(client->message, &dns64_rdata);
                        dns_rdata_init(dns64_rdata);
                        dns_rdata_fromregion(dns64_rdata, dns_rdataclass_in,
                                             dns_rdatatype_aaaa, &r);
@@ -8531,14 +8520,8 @@ query_filter64(query_ctx_t *qctx) {
 
        isc_buffer_allocate(client->manager->mctx, &buffer,
                            16 * dns_rdataset_count(qctx->rdataset));
-       result = dns_message_gettemprdataset(client->message, &myrdataset);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
-       result = dns_message_gettemprdatalist(client->message, &myrdatalist);
-       if (result != ISC_R_SUCCESS) {
-               goto cleanup;
-       }
+       dns_message_gettemprdataset(client->message, &myrdataset);
+       dns_message_gettemprdatalist(client->message, &myrdatalist);
 
        dns_rdatalist_init(myrdatalist);
        myrdatalist->rdclass = dns_rdataclass_in;
@@ -8558,10 +8541,7 @@ query_filter64(query_ctx_t *qctx) {
                isc_buffer_putmem(buffer, rdata.data, rdata.length);
                isc_buffer_remainingregion(buffer, &r);
                isc_buffer_forward(buffer, rdata.length);
-               result = dns_message_gettemprdata(client->message, &myrdata);
-               if (result != ISC_R_SUCCESS) {
-                       goto cleanup;
-               }
+               dns_message_gettemprdata(client->message, &myrdata);
                dns_rdata_init(myrdata);
                dns_rdata_fromregion(myrdata, dns_rdataclass_in,
                                     dns_rdatatype_aaaa, &r);
@@ -9885,10 +9865,7 @@ query_synthcnamewildcard(query_ctx_t *qctx, dns_rdataset_t *rdataset,
         * Reset qname to be the target name of the CNAME and restart
         * the query.
         */
-       result = dns_message_gettempname(qctx->client->message, &tname);
-       if (result != ISC_R_SUCCESS) {
-               return (result);
-       }
+       dns_message_gettempname(qctx->client->message, &tname);
 
        result = dns_rdataset_first(rdataset);
        if (result != ISC_R_SUCCESS) {
@@ -10510,10 +10487,7 @@ query_cname(query_ctx_t *qctx) {
         * Reset qname to be the target name of the CNAME and restart
         * the query.
         */
-       result = dns_message_gettempname(qctx->client->message, &tname);
-       if (result != ISC_R_SUCCESS) {
-               return (ns_query_done(qctx));
-       }
+       dns_message_gettempname(qctx->client->message, &tname);
 
        result = dns_rdataset_first(trdataset);
        if (result != ISC_R_SUCCESS) {
@@ -10612,10 +10586,7 @@ query_dname(query_ctx_t *qctx) {
         * Get the target name of the DNAME.
         */
        tname = NULL;
-       result = dns_message_gettempname(qctx->client->message, &tname);
-       if (result != ISC_R_SUCCESS) {
-               return (ns_query_done(qctx));
-       }
+       dns_message_gettempname(qctx->client->message, &tname);
 
        result = dns_rdataset_first(trdataset);
        if (result != ISC_R_SUCCESS) {
@@ -10720,35 +10691,16 @@ query_addcname(query_ctx_t *qctx, dns_trust_t trust, dns_ttl_t ttl) {
        dns_rdata_t *rdata = NULL;
        isc_region_t r;
        dns_name_t *aname = NULL;
-       isc_result_t result;
 
-       result = dns_message_gettempname(client->message, &aname);
-       if (result != ISC_R_SUCCESS) {
-               return (result);
-       }
+       dns_message_gettempname(client->message, &aname);
 
        dns_name_copy(client->query.qname, aname);
 
-       result = dns_message_gettemprdatalist(client->message, &rdatalist);
-       if (result != ISC_R_SUCCESS) {
-               dns_message_puttempname(client->message, &aname);
-               return (result);
-       }
+       dns_message_gettemprdatalist(client->message, &rdatalist);
 
-       result = dns_message_gettemprdata(client->message, &rdata);
-       if (result != ISC_R_SUCCESS) {
-               dns_message_puttempname(client->message, &aname);
-               dns_message_puttemprdatalist(client->message, &rdatalist);
-               return (result);
-       }
+       dns_message_gettemprdata(client->message, &rdata);
 
-       result = dns_message_gettemprdataset(client->message, &rdataset);
-       if (result != ISC_R_SUCCESS) {
-               dns_message_puttempname(client->message, &aname);
-               dns_message_puttemprdatalist(client->message, &rdatalist);
-               dns_message_puttemprdata(client->message, &rdata);
-               return (result);
-       }
+       dns_message_gettemprdataset(client->message, &rdataset);
 
        rdatalist->type = dns_rdatatype_cname;
        rdatalist->rdclass = client->message->rdclass;
@@ -10858,10 +10810,7 @@ query_addsoa(query_ctx_t *qctx, unsigned int override_ttl,
        /*
         * Get resources and make 'name' be the database origin.
         */
-       result = dns_message_gettempname(client->message, &name);
-       if (result != ISC_R_SUCCESS) {
-               return (result);
-       }
+       dns_message_gettempname(client->message, &name);
 
        /*
         * We'll be releasing 'name' before returning, so it's safe to
@@ -10998,12 +10947,7 @@ query_addns(query_ctx_t *qctx) {
        /*
         * Get resources and make 'name' be the database origin.
         */
-       result = dns_message_gettempname(client->message, &name);
-       if (result != ISC_R_SUCCESS) {
-               CTRACE(ISC_LOG_DEBUG(3), "query_addns: dns_message_gettempname "
-                                        "failed: done");
-               return (result);
-       }
+       dns_message_gettempname(client->message, &name);
        dns_name_clone(dns_db_origin(qctx->db), name);
        rdataset = ns_client_newrdataset(client);
        if (rdataset == NULL) {
index b06bc027c8ace6c87a3a466c61ef23b31f10ac8d..076d01f77575d0a4d3166949bbce4fbd1dc71148 100644 (file)
@@ -614,14 +614,8 @@ attach_query_msg_to_client(ns_client_t *client, const char *qnamestr,
        /*
         * Allocate structures required to construct the query.
         */
-       result = dns_message_gettemprdataset(message, &qrdataset);
-       if (result != ISC_R_SUCCESS) {
-               goto destroy_message;
-       }
-       result = dns_message_gettempname(message, &qname);
-       if (result != ISC_R_SUCCESS) {
-               goto put_rdataset;
-       }
+       dns_message_gettemprdataset(message, &qrdataset);
+       dns_message_gettempname(message, &qname);
 
        /*
         * Convert "qnamestr" to a DNS name, create a question rdataset of
@@ -669,7 +663,6 @@ attach_query_msg_to_client(ns_client_t *client, const char *qnamestr,
 
 put_name:
        dns_message_puttempname(message, &qname);
-put_rdataset:
        dns_message_puttemprdataset(message, &qrdataset);
 destroy_message:
        dns_message_detach(&message);
index 3198e2070af29585404850bcf9d26311ecfb40ef..8d71c3c57209249935435fc1b539f1c1d815cdae 100644 (file)
@@ -1386,18 +1386,12 @@ sendstream(xfrout_ctx_t *xfr) {
                        isc_buffer_add(&xfr->buf, 12 + 4);
 
                        qrdataset = NULL;
-                       result = dns_message_gettemprdataset(msg, &qrdataset);
-                       if (result != ISC_R_SUCCESS) {
-                               goto failure;
-                       }
+                       dns_message_gettemprdataset(msg, &qrdataset);
                        dns_rdataset_makequestion(qrdataset,
                                                  xfr->client->message->rdclass,
                                                  xfr->qtype);
 
-                       result = dns_message_gettempname(msg, &qname);
-                       if (result != ISC_R_SUCCESS) {
-                               goto failure;
-                       }
+                       dns_message_gettempname(msg, &qname);
                        isc_buffer_availableregion(&xfr->buf, &r);
                        INSIST(r.length >= xfr->qname->length);
                        r.length = xfr->qname->length;
@@ -1467,10 +1461,7 @@ sendstream(xfrout_ctx_t *xfr) {
                        log_rr(name, rdata, ttl); /* XXX */
                }
 
-               result = dns_message_gettempname(msg, &msgname);
-               if (result != ISC_R_SUCCESS) {
-                       goto failure;
-               }
+               dns_message_gettempname(msg, &msgname);
                isc_buffer_availableregion(&xfr->buf, &r);
                INSIST(r.length >= name->length);
                r.length = name->length;
@@ -1480,20 +1471,14 @@ sendstream(xfrout_ctx_t *xfr) {
                /* Reserve space for RR header. */
                isc_buffer_add(&xfr->buf, 10);
 
-               result = dns_message_gettemprdata(msg, &msgrdata);
-               if (result != ISC_R_SUCCESS) {
-                       goto failure;
-               }
+               dns_message_gettemprdata(msg, &msgrdata);
                isc_buffer_availableregion(&xfr->buf, &r);
                r.length = rdata->length;
                isc_buffer_putmem(&xfr->buf, rdata->data, rdata->length);
                dns_rdata_init(msgrdata);
                dns_rdata_fromregion(msgrdata, rdata->rdclass, rdata->type, &r);
 
-               result = dns_message_gettemprdatalist(msg, &msgrdl);
-               if (result != ISC_R_SUCCESS) {
-                       goto failure;
-               }
+               dns_message_gettemprdatalist(msg, &msgrdl);
                msgrdl->type = rdata->type;
                msgrdl->rdclass = rdata->rdclass;
                msgrdl->ttl = ttl;
@@ -1505,10 +1490,7 @@ sendstream(xfrout_ctx_t *xfr) {
                }
                ISC_LIST_APPEND(msgrdl->rdata, msgrdata, link);
 
-               result = dns_message_gettemprdataset(msg, &msgrds);
-               if (result != ISC_R_SUCCESS) {
-                       goto failure;
-               }
+               dns_message_gettemprdataset(msg, &msgrds);
                result = dns_rdatalist_tordataset(msgrdl, msgrds);
                INSIST(result == ISC_R_SUCCESS);