]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
dns_message_gettemp*() resets objects
authorEvan Hunt <each@isc.org>
Sun, 23 Mar 2025 20:45:04 +0000 (13:45 -0700)
committerEvan Hunt <each@isc.org>
Wed, 26 Mar 2025 23:30:38 +0000 (23:30 +0000)
callers of dns_message_gettemprdata() and dns_message_getrdatalist()
initialize the objects after retrieving them. this is no longer
necessary.

bin/dig/dighost.c
bin/nsupdate/nsupdate.c
lib/dns/message.c
lib/dns/xfrin.c
lib/dns/zone.c
lib/ns/query.c
lib/ns/xfrout.c

index 954fbdd2e73aa17817abe261c02b3a69e0156f1c..440c3a5c2b76af100710140fce31411a35aa22ed 100644 (file)
@@ -2101,11 +2101,9 @@ insert_soa(dig_lookup_t *lookup) {
                                      &soa, &lookup->rdatabuf);
        check_result(result, "isc_rdata_fromstruct");
 
-       dns_message_gettemprdatalist(lookup->sendmsg, &rdatalist);
-
        dns_message_gettemprdataset(lookup->sendmsg, &rdataset);
 
-       dns_rdatalist_init(rdatalist);
+       dns_message_gettemprdatalist(lookup->sendmsg, &rdatalist);
        rdatalist->type = dns_rdatatype_soa;
        rdatalist->rdclass = lookup->rdclass;
        ISC_LIST_APPEND(rdatalist->rdata, rdata, link);
index f09c74db0b79cd44f94144a39d00d979cac735dc..638024d793d35d4aa51e233e6616b459bc438a11 100644 (file)
@@ -1436,8 +1436,6 @@ make_prereq(char *cmdline, bool ispositive, bool isrrset) {
 
        dns_message_gettemprdata(updatemsg, &rdata);
 
-       dns_rdata_init(rdata);
-
        if (isrrset && ispositive) {
                retval = parse_rdata(&cmdline, rdataclass, rdatatype, updatemsg,
                                     rdata);
@@ -1917,8 +1915,6 @@ update_addordelete(char *cmdline, bool isdelete) {
 
        dns_message_gettemprdata(updatemsg, &rdata);
 
-       dns_rdata_init(rdata);
-
        /*
         * If this is an add, read the TTL and verify that it's in range.
         * If it's a delete, ignore a TTL if present (for compatibility).
index 42ce913162dff656acd821cd5ebdec3a2e7bf213..b5268f1ce0c20afb8b04c413d894c118a5f73e97 100644 (file)
@@ -319,6 +319,7 @@ newrdata(dns_message_t *msg) {
        rdata = ISC_LIST_HEAD(msg->freerdata);
        if (rdata != NULL) {
                ISC_LIST_UNLINK(msg->freerdata, rdata, link);
+               dns_rdata_reset(rdata);
                return rdata;
        }
 
@@ -349,6 +350,7 @@ newrdatalist(dns_message_t *msg) {
        rdatalist = ISC_LIST_HEAD(msg->freerdatalist);
        if (rdatalist != NULL) {
                ISC_LIST_UNLINK(msg->freerdatalist, rdatalist, link);
+               dns_rdatalist_init(rdatalist);
                goto out;
        }
 
@@ -2790,7 +2792,6 @@ dns_message_setquerytsig(dns_message_t *msg, isc_buffer_t *querytsig) {
        isc_buffer_allocate(msg->mctx, &buf, r.length);
        isc_buffer_putmem(buf, r.base, r.length);
        isc_buffer_usedregion(buf, &r);
-       dns_rdata_init(rdata);
        dns_rdata_fromregion(rdata, dns_rdataclass_any, dns_rdatatype_tsig, &r);
        dns_message_takebuffer(msg, &buf);
        ISC_LIST_APPEND(list->rdata, rdata, link);
index 8122fde4e02366e28e67ae53f2b51d06e08eaa7a..294bdb0f47fe51ee6bf820214de65816ad98bcdf 100644 (file)
@@ -1517,11 +1517,9 @@ tuple2msgname(dns_difftuple_t *tuple, dns_message_t *msg, dns_name_t **target) {
        REQUIRE(target != NULL && *target == NULL);
 
        dns_message_gettemprdata(msg, &rdata);
-       dns_rdata_init(rdata);
        dns_rdata_clone(&tuple->rdata, rdata);
 
        dns_message_gettemprdatalist(msg, &rdl);
-       dns_rdatalist_init(rdl);
        rdl->type = tuple->rdata.type;
        rdl->rdclass = tuple->rdata.rdclass;
        rdl->ttl = tuple->ttl;
index 5e054459a29cdb8587545da29b0f1ba65c93a763..00f7a9e6352ae0fcd2cfdb5e3d2241f60e1d0b1f 100644 (file)
@@ -15476,7 +15476,6 @@ notify_createmessage(dns_zone_t *zone, unsigned int flags,
        isc_buffer_allocate(zone->mctx, &b, r.length);
        isc_buffer_putmem(b, r.base, r.length);
        isc_buffer_usedregion(b, &r);
-       dns_rdata_init(temprdata);
        dns_rdata_fromregion(temprdata, rdata.rdclass, rdata.type, &r);
        dns_message_takebuffer(message, &b);
        result = dns_rdataset_next(&rdataset);
index 1a2ee677c4b1283d2bf71a4db0dcbd70d6c4d7d3..23f3d11cf47428f358b3360fe298ca51eaa88adc 100644 (file)
@@ -8264,7 +8264,6 @@ query_dns64(query_ctx_t *qctx) {
        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;
        dns64_rdatalist->type = dns_rdatatype_aaaa;
        if (client->query.dns64_ttl != UINT32_MAX) {
@@ -8309,7 +8308,6 @@ query_dns64(query_ctx_t *qctx) {
                        isc_buffer_remainingregion(buffer, &r);
                        isc_buffer_forward(buffer, 16);
                        dns_message_gettemprdata(client->message, &dns64_rdata);
-                       dns_rdata_init(dns64_rdata);
                        dns_rdata_fromregion(dns64_rdata, dns_rdataclass_in,
                                             dns_rdatatype_aaaa, &r);
                        ISC_LIST_APPEND(dns64_rdatalist->rdata, dns64_rdata,
@@ -8425,7 +8423,6 @@ query_filter64(query_ctx_t *qctx) {
        dns_message_gettemprdataset(client->message, &myrdataset);
        dns_message_gettemprdatalist(client->message, &myrdatalist);
 
-       dns_rdatalist_init(myrdatalist);
        myrdatalist->rdclass = dns_rdataclass_in;
        myrdatalist->type = dns_rdatatype_aaaa;
        myrdatalist->ttl = qctx->rdataset->ttl;
index 96012fdccd463af0ec738c30f642b1d764d44cfa..6df1b20559a4dc8d80b6f0123b9e0510f5627255 100644 (file)
@@ -1544,7 +1544,6 @@ sendstream(xfrout_ctx_t *xfr) {
                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);
 
                dns_message_gettemprdatalist(msg, &msgrdl);