From cdc50af0bff41accc02c613b9c6d8cd41b171ffe Mon Sep 17 00:00:00 2001 From: Brian Wellington Date: Mon, 12 Feb 2001 03:05:05 +0000 Subject: [PATCH] In the towire_* and additionaldata_* routines, add an offsets table to names passed into dns_name_toregion(). This is effectively free, and reduces the number of calls to set_offsets() and dns_name_clone() in name compression. --- lib/dns/rdata/any_255/tsig_250.c | 5 +++-- lib/dns/rdata/generic/afsdb_18.c | 8 +++++--- lib/dns/rdata/generic/cname_5.c | 5 +++-- lib/dns/rdata/generic/dname_39.c | 5 +++-- lib/dns/rdata/generic/mb_7.c | 8 +++++--- lib/dns/rdata/generic/md_3.c | 8 +++++--- lib/dns/rdata/generic/mf_4.c | 8 +++++--- lib/dns/rdata/generic/mg_8.c | 5 +++-- lib/dns/rdata/generic/minfo_14.c | 8 +++++--- lib/dns/rdata/generic/mr_9.c | 5 +++-- lib/dns/rdata/generic/mx_15.c | 8 +++++--- lib/dns/rdata/generic/ns_2.c | 8 +++++--- lib/dns/rdata/generic/nxt_30.c | 5 +++-- lib/dns/rdata/generic/ptr_12.c | 5 +++-- lib/dns/rdata/generic/rp_17.c | 8 +++++--- lib/dns/rdata/generic/rt_21.c | 8 +++++--- lib/dns/rdata/generic/sig_24.c | 5 +++-- lib/dns/rdata/generic/soa_6.c | 8 +++++--- lib/dns/rdata/generic/tkey_249.c | 5 +++-- lib/dns/rdata/in_1/a6_38.c | 5 +++-- lib/dns/rdata/in_1/kx_36.c | 8 +++++--- lib/dns/rdata/in_1/naptr_35.c | 8 +++++--- lib/dns/rdata/in_1/nsap-ptr_23.c | 5 +++-- lib/dns/rdata/in_1/px_26.c | 7 ++++--- lib/dns/rdata/in_1/srv_33.c | 8 +++++--- 25 files changed, 102 insertions(+), 64 deletions(-) diff --git a/lib/dns/rdata/any_255/tsig_250.c b/lib/dns/rdata/any_255/tsig_250.c index eed0e85c1a..9943e18b78 100644 --- a/lib/dns/rdata/any_255/tsig_250.c +++ b/lib/dns/rdata/any_255/tsig_250.c @@ -15,7 +15,7 @@ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: tsig_250.c,v 1.47 2001/01/09 21:53:48 bwelling Exp $ */ +/* $Id: tsig_250.c,v 1.48 2001/02/12 03:04:37 bwelling Exp $ */ /* Reviewed: Thu Mar 16 13:39:43 PST 2000 by gson */ @@ -306,6 +306,7 @@ static inline isc_result_t towire_any_tsig(ARGS_TOWIRE) { isc_region_t sr; dns_name_t name; + dns_offsets_t offsets; REQUIRE(rdata->type == 250); REQUIRE(rdata->rdclass == 255); @@ -313,7 +314,7 @@ towire_any_tsig(ARGS_TOWIRE) { dns_compress_setmethods(cctx, DNS_COMPRESS_NONE); dns_rdata_toregion(rdata, &sr); - dns_name_init(&name, NULL); + dns_name_init(&name, offsets); dns_name_fromregion(&name, &sr); RETERR(dns_name_towire(&name, cctx, target)); isc_region_consume(&sr, name_length(&name)); diff --git a/lib/dns/rdata/generic/afsdb_18.c b/lib/dns/rdata/generic/afsdb_18.c index 2c4d634767..86adb700c4 100644 --- a/lib/dns/rdata/generic/afsdb_18.c +++ b/lib/dns/rdata/generic/afsdb_18.c @@ -15,7 +15,7 @@ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: afsdb_18.c,v 1.35 2001/01/09 21:53:50 bwelling Exp $ */ +/* $Id: afsdb_18.c,v 1.36 2001/02/12 03:04:38 bwelling Exp $ */ /* Reviewed: Wed Mar 15 14:59:00 PST 2000 by explorer */ @@ -112,6 +112,7 @@ towire_afsdb(ARGS_TOWIRE) { isc_region_t tr; isc_region_t sr; dns_name_t name; + dns_offsets_t offsets; REQUIRE(rdata->type == 18); REQUIRE(rdata->length != 0); @@ -125,7 +126,7 @@ towire_afsdb(ARGS_TOWIRE) { isc_region_consume(&sr, 2); isc_buffer_add(target, 2); - dns_name_init(&name, NULL); + dns_name_init(&name, offsets); dns_name_fromregion(&name, &sr); return (dns_name_towire(&name, cctx, target)); @@ -227,11 +228,12 @@ freestruct_afsdb(ARGS_FREESTRUCT) { static inline isc_result_t additionaldata_afsdb(ARGS_ADDLDATA) { dns_name_t name; + dns_offsets_t offsets; isc_region_t region; REQUIRE(rdata->type == 18); - dns_name_init(&name, NULL); + dns_name_init(&name, offsets); dns_rdata_toregion(rdata, ®ion); isc_region_consume(®ion, 2); dns_name_fromregion(&name, ®ion); diff --git a/lib/dns/rdata/generic/cname_5.c b/lib/dns/rdata/generic/cname_5.c index 48f78a9c87..389d383bf4 100644 --- a/lib/dns/rdata/generic/cname_5.c +++ b/lib/dns/rdata/generic/cname_5.c @@ -15,7 +15,7 @@ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: cname_5.c,v 1.39 2001/01/09 21:53:55 bwelling Exp $ */ +/* $Id: cname_5.c,v 1.40 2001/02/12 03:04:39 bwelling Exp $ */ /* reviewed: Wed Mar 15 16:48:45 PST 2000 by brister */ @@ -82,6 +82,7 @@ fromwire_cname(ARGS_FROMWIRE) { static inline isc_result_t towire_cname(ARGS_TOWIRE) { dns_name_t name; + dns_offsets_t offsets; isc_region_t region; REQUIRE(rdata->type == 5); @@ -89,7 +90,7 @@ towire_cname(ARGS_TOWIRE) { dns_compress_setmethods(cctx, DNS_COMPRESS_GLOBAL14); - dns_name_init(&name, NULL); + dns_name_init(&name, offsets); dns_rdata_toregion(rdata, ®ion); dns_name_fromregion(&name, ®ion); diff --git a/lib/dns/rdata/generic/dname_39.c b/lib/dns/rdata/generic/dname_39.c index e65e04406a..7f0a24a922 100644 --- a/lib/dns/rdata/generic/dname_39.c +++ b/lib/dns/rdata/generic/dname_39.c @@ -15,7 +15,7 @@ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: dname_39.c,v 1.29 2001/01/09 21:53:57 bwelling Exp $ */ +/* $Id: dname_39.c,v 1.30 2001/02/12 03:04:40 bwelling Exp $ */ /* Reviewed: Wed Mar 15 16:52:38 PST 2000 by explorer */ @@ -83,13 +83,14 @@ fromwire_dname(ARGS_FROMWIRE) { static inline isc_result_t towire_dname(ARGS_TOWIRE) { dns_name_t name; + dns_offsets_t offsets; isc_region_t region; REQUIRE(rdata->type == 39); REQUIRE(rdata->length != 0); dns_compress_setmethods(cctx, DNS_COMPRESS_NONE); - dns_name_init(&name, NULL); + dns_name_init(&name, offsets); dns_rdata_toregion(rdata, ®ion); dns_name_fromregion(&name, ®ion); diff --git a/lib/dns/rdata/generic/mb_7.c b/lib/dns/rdata/generic/mb_7.c index 5c014fd6ea..adcf92830b 100644 --- a/lib/dns/rdata/generic/mb_7.c +++ b/lib/dns/rdata/generic/mb_7.c @@ -15,7 +15,7 @@ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: mb_7.c,v 1.37 2001/01/09 21:54:10 bwelling Exp $ */ +/* $Id: mb_7.c,v 1.38 2001/02/12 03:04:41 bwelling Exp $ */ /* Reviewed: Wed Mar 15 17:31:26 PST 2000 by bwelling */ @@ -81,6 +81,7 @@ fromwire_mb(ARGS_FROMWIRE) { static inline isc_result_t towire_mb(ARGS_TOWIRE) { dns_name_t name; + dns_offsets_t offsets; isc_region_t region; REQUIRE(rdata->type == 7); @@ -88,7 +89,7 @@ towire_mb(ARGS_TOWIRE) { dns_compress_setmethods(cctx, DNS_COMPRESS_GLOBAL14); - dns_name_init(&name, NULL); + dns_name_init(&name, offsets); dns_rdata_toregion(rdata, ®ion); dns_name_fromregion(&name, ®ion); @@ -175,11 +176,12 @@ freestruct_mb(ARGS_FREESTRUCT) { static inline isc_result_t additionaldata_mb(ARGS_ADDLDATA) { dns_name_t name; + dns_offsets_t offsets; isc_region_t region; REQUIRE(rdata->type == 7); - dns_name_init(&name, NULL); + dns_name_init(&name, offsets); dns_rdata_toregion(rdata, ®ion); dns_name_fromregion(&name, ®ion); diff --git a/lib/dns/rdata/generic/md_3.c b/lib/dns/rdata/generic/md_3.c index f62a97fad8..a7ff82f9e3 100644 --- a/lib/dns/rdata/generic/md_3.c +++ b/lib/dns/rdata/generic/md_3.c @@ -15,7 +15,7 @@ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: md_3.c,v 1.39 2001/01/09 21:54:13 bwelling Exp $ */ +/* $Id: md_3.c,v 1.40 2001/02/12 03:04:43 bwelling Exp $ */ /* Reviewed: Wed Mar 15 17:48:20 PST 2000 by bwelling */ @@ -81,6 +81,7 @@ fromwire_md(ARGS_FROMWIRE) { static inline isc_result_t towire_md(ARGS_TOWIRE) { dns_name_t name; + dns_offsets_t offsets; isc_region_t region; REQUIRE(rdata->type == 3); @@ -88,7 +89,7 @@ towire_md(ARGS_TOWIRE) { dns_compress_setmethods(cctx, DNS_COMPRESS_GLOBAL14); - dns_name_init(&name, NULL); + dns_name_init(&name, offsets); dns_rdata_toregion(rdata, ®ion); dns_name_fromregion(&name, ®ion); @@ -176,11 +177,12 @@ freestruct_md(ARGS_FREESTRUCT) { static inline isc_result_t additionaldata_md(ARGS_ADDLDATA) { dns_name_t name; + dns_offsets_t offsets; isc_region_t region; REQUIRE(rdata->type == 3); - dns_name_init(&name, NULL); + dns_name_init(&name, offsets); dns_rdata_toregion(rdata, ®ion); dns_name_fromregion(&name, ®ion); diff --git a/lib/dns/rdata/generic/mf_4.c b/lib/dns/rdata/generic/mf_4.c index 20eef370a8..03382a128f 100644 --- a/lib/dns/rdata/generic/mf_4.c +++ b/lib/dns/rdata/generic/mf_4.c @@ -15,7 +15,7 @@ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: mf_4.c,v 1.37 2001/01/09 21:54:15 bwelling Exp $ */ +/* $Id: mf_4.c,v 1.38 2001/02/12 03:04:44 bwelling Exp $ */ /* reviewed: Wed Mar 15 17:47:33 PST 2000 by brister */ @@ -81,6 +81,7 @@ fromwire_mf(ARGS_FROMWIRE) { static inline isc_result_t towire_mf(ARGS_TOWIRE) { dns_name_t name; + dns_offsets_t offsets; isc_region_t region; REQUIRE(rdata->type == 4); @@ -88,7 +89,7 @@ towire_mf(ARGS_TOWIRE) { dns_compress_setmethods(cctx, DNS_COMPRESS_GLOBAL14); - dns_name_init(&name, NULL); + dns_name_init(&name, offsets); dns_rdata_toregion(rdata, ®ion); dns_name_fromregion(&name, ®ion); @@ -175,11 +176,12 @@ freestruct_mf(ARGS_FREESTRUCT) { static inline isc_result_t additionaldata_mf(ARGS_ADDLDATA) { dns_name_t name; + dns_offsets_t offsets; isc_region_t region; REQUIRE(rdata->type == 4); - dns_name_init(&name, NULL); + dns_name_init(&name, offsets); dns_rdata_toregion(rdata, ®ion); dns_name_fromregion(&name, ®ion); diff --git a/lib/dns/rdata/generic/mg_8.c b/lib/dns/rdata/generic/mg_8.c index 80cb3671fe..da1e8d48ca 100644 --- a/lib/dns/rdata/generic/mg_8.c +++ b/lib/dns/rdata/generic/mg_8.c @@ -15,7 +15,7 @@ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: mg_8.c,v 1.35 2001/01/09 21:54:17 bwelling Exp $ */ +/* $Id: mg_8.c,v 1.36 2001/02/12 03:04:45 bwelling Exp $ */ /* reviewed: Wed Mar 15 17:49:21 PST 2000 by brister */ @@ -81,6 +81,7 @@ fromwire_mg(ARGS_FROMWIRE) { static inline isc_result_t towire_mg(ARGS_TOWIRE) { dns_name_t name; + dns_offsets_t offsets; isc_region_t region; REQUIRE(rdata->type == 8); @@ -88,7 +89,7 @@ towire_mg(ARGS_TOWIRE) { dns_compress_setmethods(cctx, DNS_COMPRESS_GLOBAL14); - dns_name_init(&name, NULL); + dns_name_init(&name, offsets); dns_rdata_toregion(rdata, ®ion); dns_name_fromregion(&name, ®ion); diff --git a/lib/dns/rdata/generic/minfo_14.c b/lib/dns/rdata/generic/minfo_14.c index 07630eeb1b..faee2b453b 100644 --- a/lib/dns/rdata/generic/minfo_14.c +++ b/lib/dns/rdata/generic/minfo_14.c @@ -15,7 +15,7 @@ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: minfo_14.c,v 1.36 2001/01/09 21:54:20 bwelling Exp $ */ +/* $Id: minfo_14.c,v 1.37 2001/02/12 03:04:46 bwelling Exp $ */ /* reviewed: Wed Mar 15 17:45:32 PST 2000 by brister */ @@ -104,14 +104,16 @@ towire_minfo(ARGS_TOWIRE) { isc_region_t region; dns_name_t rmail; dns_name_t email; + dns_offsets_t roffsets; + dns_offsets_t eoffsets; REQUIRE(rdata->type == 14); REQUIRE(rdata->length != 0); dns_compress_setmethods(cctx, DNS_COMPRESS_GLOBAL14); - dns_name_init(&rmail, NULL); - dns_name_init(&email, NULL); + dns_name_init(&rmail, roffsets); + dns_name_init(&email, eoffsets); dns_rdata_toregion(rdata, ®ion); diff --git a/lib/dns/rdata/generic/mr_9.c b/lib/dns/rdata/generic/mr_9.c index 15879f5547..a8786b2247 100644 --- a/lib/dns/rdata/generic/mr_9.c +++ b/lib/dns/rdata/generic/mr_9.c @@ -15,7 +15,7 @@ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: mr_9.c,v 1.34 2001/01/09 21:54:22 bwelling Exp $ */ +/* $Id: mr_9.c,v 1.35 2001/02/12 03:04:47 bwelling Exp $ */ /* Reviewed: Wed Mar 15 21:30:35 EST 2000 by tale */ @@ -81,6 +81,7 @@ fromwire_mr(ARGS_FROMWIRE) { static inline isc_result_t towire_mr(ARGS_TOWIRE) { dns_name_t name; + dns_offsets_t offsets; isc_region_t region; REQUIRE(rdata->type == 9); @@ -88,7 +89,7 @@ towire_mr(ARGS_TOWIRE) { dns_compress_setmethods(cctx, DNS_COMPRESS_GLOBAL14); - dns_name_init(&name, NULL); + dns_name_init(&name, offsets); dns_rdata_toregion(rdata, ®ion); dns_name_fromregion(&name, ®ion); diff --git a/lib/dns/rdata/generic/mx_15.c b/lib/dns/rdata/generic/mx_15.c index ac28ee56c3..a4dd0e740e 100644 --- a/lib/dns/rdata/generic/mx_15.c +++ b/lib/dns/rdata/generic/mx_15.c @@ -15,7 +15,7 @@ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: mx_15.c,v 1.44 2001/01/09 21:54:24 bwelling Exp $ */ +/* $Id: mx_15.c,v 1.45 2001/02/12 03:04:48 bwelling Exp $ */ /* reviewed: Wed Mar 15 18:05:46 PST 2000 by brister */ @@ -100,6 +100,7 @@ fromwire_mx(ARGS_FROMWIRE) { static inline isc_result_t towire_mx(ARGS_TOWIRE) { dns_name_t name; + dns_offsets_t offsets; isc_region_t region; REQUIRE(rdata->type == 15); @@ -111,7 +112,7 @@ towire_mx(ARGS_TOWIRE) { RETERR(mem_tobuffer(target, region.base, 2)); isc_region_consume(®ion, 2); - dns_name_init(&name, NULL); + dns_name_init(&name, offsets); dns_name_fromregion(&name, ®ion); return (dns_name_towire(&name, cctx, target)); @@ -209,11 +210,12 @@ freestruct_mx(ARGS_FREESTRUCT) { static inline isc_result_t additionaldata_mx(ARGS_ADDLDATA) { dns_name_t name; + dns_offsets_t offsets; isc_region_t region; REQUIRE(rdata->type == 15); - dns_name_init(&name, NULL); + dns_name_init(&name, offsets); dns_rdata_toregion(rdata, ®ion); isc_region_consume(®ion, 2); dns_name_fromregion(&name, ®ion); diff --git a/lib/dns/rdata/generic/ns_2.c b/lib/dns/rdata/generic/ns_2.c index 2f75e67c12..5af3b4d2c4 100644 --- a/lib/dns/rdata/generic/ns_2.c +++ b/lib/dns/rdata/generic/ns_2.c @@ -15,7 +15,7 @@ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: ns_2.c,v 1.38 2001/01/09 21:54:26 bwelling Exp $ */ +/* $Id: ns_2.c,v 1.39 2001/02/12 03:04:49 bwelling Exp $ */ /* Reviewed: Wed Mar 15 18:15:00 PST 2000 by bwelling */ @@ -81,6 +81,7 @@ fromwire_ns(ARGS_FROMWIRE) { static inline isc_result_t towire_ns(ARGS_TOWIRE) { dns_name_t name; + dns_offsets_t offsets; isc_region_t region; REQUIRE(rdata->type == 2); @@ -88,7 +89,7 @@ towire_ns(ARGS_TOWIRE) { dns_compress_setmethods(cctx, DNS_COMPRESS_GLOBAL14); - dns_name_init(&name, NULL); + dns_name_init(&name, offsets); dns_rdata_toregion(rdata, ®ion); dns_name_fromregion(&name, ®ion); @@ -175,11 +176,12 @@ freestruct_ns(ARGS_FREESTRUCT) { static inline isc_result_t additionaldata_ns(ARGS_ADDLDATA) { dns_name_t name; + dns_offsets_t offsets; isc_region_t region; REQUIRE(rdata->type == 2); - dns_name_init(&name, NULL); + dns_name_init(&name, offsets); dns_rdata_toregion(rdata, ®ion); dns_name_fromregion(&name, ®ion); diff --git a/lib/dns/rdata/generic/nxt_30.c b/lib/dns/rdata/generic/nxt_30.c index 3274b97bfc..41d1af8598 100644 --- a/lib/dns/rdata/generic/nxt_30.c +++ b/lib/dns/rdata/generic/nxt_30.c @@ -15,7 +15,7 @@ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: nxt_30.c,v 1.45 2001/01/09 21:54:31 bwelling Exp $ */ +/* $Id: nxt_30.c,v 1.46 2001/02/12 03:04:51 bwelling Exp $ */ /* reviewed: Wed Mar 15 18:21:15 PST 2000 by brister */ @@ -151,12 +151,13 @@ static inline isc_result_t towire_nxt(ARGS_TOWIRE) { isc_region_t sr; dns_name_t name; + dns_offsets_t offsets; REQUIRE(rdata->type == 30); REQUIRE(rdata->length != 0); dns_compress_setmethods(cctx, DNS_COMPRESS_NONE); - dns_name_init(&name, NULL); + dns_name_init(&name, offsets); dns_rdata_toregion(rdata, &sr); dns_name_fromregion(&name, &sr); isc_region_consume(&sr, name_length(&name)); diff --git a/lib/dns/rdata/generic/ptr_12.c b/lib/dns/rdata/generic/ptr_12.c index 51357f9181..2f5e3eb159 100644 --- a/lib/dns/rdata/generic/ptr_12.c +++ b/lib/dns/rdata/generic/ptr_12.c @@ -15,7 +15,7 @@ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: ptr_12.c,v 1.35 2001/01/09 21:54:38 bwelling Exp $ */ +/* $Id: ptr_12.c,v 1.36 2001/02/12 03:04:52 bwelling Exp $ */ /* Reviewed: Thu Mar 16 14:05:12 PST 2000 by explorer */ @@ -81,6 +81,7 @@ fromwire_ptr(ARGS_FROMWIRE) { static inline isc_result_t towire_ptr(ARGS_TOWIRE) { dns_name_t name; + dns_offsets_t offsets; isc_region_t region; REQUIRE(rdata->type == 12); @@ -88,7 +89,7 @@ towire_ptr(ARGS_TOWIRE) { dns_compress_setmethods(cctx, DNS_COMPRESS_GLOBAL14); - dns_name_init(&name, NULL); + dns_name_init(&name, offsets); dns_rdata_toregion(rdata, ®ion); dns_name_fromregion(&name, ®ion); diff --git a/lib/dns/rdata/generic/rp_17.c b/lib/dns/rdata/generic/rp_17.c index bacdc781f0..a82b72dcc7 100644 --- a/lib/dns/rdata/generic/rp_17.c +++ b/lib/dns/rdata/generic/rp_17.c @@ -15,7 +15,7 @@ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: rp_17.c,v 1.31 2001/01/09 21:54:40 bwelling Exp $ */ +/* $Id: rp_17.c,v 1.32 2001/02/12 03:04:53 bwelling Exp $ */ /* RFC 1183 */ @@ -104,13 +104,15 @@ towire_rp(ARGS_TOWIRE) { isc_region_t region; dns_name_t rmail; dns_name_t email; + dns_offsets_t roffsets; + dns_offsets_t eoffsets; REQUIRE(rdata->type == 17); REQUIRE(rdata->length != 0); dns_compress_setmethods(cctx, DNS_COMPRESS_NONE); - dns_name_init(&rmail, NULL); - dns_name_init(&email, NULL); + dns_name_init(&rmail, roffsets); + dns_name_init(&email, eoffsets); dns_rdata_toregion(rdata, ®ion); diff --git a/lib/dns/rdata/generic/rt_21.c b/lib/dns/rdata/generic/rt_21.c index aa41aa2701..f5851979cb 100644 --- a/lib/dns/rdata/generic/rt_21.c +++ b/lib/dns/rdata/generic/rt_21.c @@ -15,7 +15,7 @@ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: rt_21.c,v 1.33 2001/01/09 21:54:42 bwelling Exp $ */ +/* $Id: rt_21.c,v 1.34 2001/02/12 03:04:54 bwelling Exp $ */ /* reviewed: Thu Mar 16 15:02:31 PST 2000 by brister */ @@ -105,6 +105,7 @@ fromwire_rt(ARGS_FROMWIRE) { static inline isc_result_t towire_rt(ARGS_TOWIRE) { dns_name_t name; + dns_offsets_t offsets; isc_region_t region; isc_region_t tr; @@ -120,7 +121,7 @@ towire_rt(ARGS_TOWIRE) { isc_region_consume(®ion, 2); isc_buffer_add(target, 2); - dns_name_init(&name, NULL); + dns_name_init(&name, offsets); dns_name_fromregion(&name, ®ion); return (dns_name_towire(&name, cctx, target)); @@ -219,12 +220,13 @@ freestruct_rt(ARGS_FREESTRUCT) { static inline isc_result_t additionaldata_rt(ARGS_ADDLDATA) { dns_name_t name; + dns_offsets_t offsets; isc_region_t region; isc_result_t result; REQUIRE(rdata->type == 21); - dns_name_init(&name, NULL); + dns_name_init(&name, offsets); dns_rdata_toregion(rdata, ®ion); isc_region_consume(®ion, 2); dns_name_fromregion(&name, ®ion); diff --git a/lib/dns/rdata/generic/sig_24.c b/lib/dns/rdata/generic/sig_24.c index 906082b48e..fbf4b79c21 100644 --- a/lib/dns/rdata/generic/sig_24.c +++ b/lib/dns/rdata/generic/sig_24.c @@ -15,7 +15,7 @@ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: sig_24.c,v 1.49 2001/01/09 21:54:44 bwelling Exp $ */ +/* $Id: sig_24.c,v 1.50 2001/02/12 03:04:55 bwelling Exp $ */ /* Reviewed: Fri Mar 17 09:05:02 PST 2000 by gson */ @@ -278,6 +278,7 @@ static inline isc_result_t towire_sig(ARGS_TOWIRE) { isc_region_t sr; dns_name_t name; + dns_offsets_t offsets; REQUIRE(rdata->type == 24); REQUIRE(rdata->length != 0); @@ -299,7 +300,7 @@ towire_sig(ARGS_TOWIRE) { /* * Signer. */ - dns_name_init(&name, NULL); + dns_name_init(&name, offsets); dns_name_fromregion(&name, &sr); isc_region_consume(&sr, name_length(&name)); RETERR(dns_name_towire(&name, cctx, target)); diff --git a/lib/dns/rdata/generic/soa_6.c b/lib/dns/rdata/generic/soa_6.c index 75d49b2666..46b8dcdba1 100644 --- a/lib/dns/rdata/generic/soa_6.c +++ b/lib/dns/rdata/generic/soa_6.c @@ -15,7 +15,7 @@ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: soa_6.c,v 1.48 2001/01/09 21:54:47 bwelling Exp $ */ +/* $Id: soa_6.c,v 1.49 2001/02/12 03:04:56 bwelling Exp $ */ /* Reviewed: Thu Mar 16 15:18:32 PST 2000 by explorer */ @@ -179,14 +179,16 @@ towire_soa(ARGS_TOWIRE) { isc_region_t tregion; dns_name_t mname; dns_name_t rname; + dns_offsets_t moffsets; + dns_offsets_t roffsets; REQUIRE(rdata->type == 6); REQUIRE(rdata->length != 0); dns_compress_setmethods(cctx, DNS_COMPRESS_GLOBAL14); - dns_name_init(&mname, NULL); - dns_name_init(&rname, NULL); + dns_name_init(&mname, moffsets); + dns_name_init(&rname, roffsets); dns_rdata_toregion(rdata, &sregion); diff --git a/lib/dns/rdata/generic/tkey_249.c b/lib/dns/rdata/generic/tkey_249.c index a310329242..2bcd8f4da3 100644 --- a/lib/dns/rdata/generic/tkey_249.c +++ b/lib/dns/rdata/generic/tkey_249.c @@ -15,7 +15,7 @@ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: tkey_249.c,v 1.43 2001/01/11 03:11:30 bwelling Exp $ */ +/* $Id: tkey_249.c,v 1.44 2001/02/12 03:04:58 bwelling Exp $ */ /* * Reviewed: Thu Mar 16 17:35:30 PST 2000 by halley. @@ -292,6 +292,7 @@ static inline isc_result_t towire_tkey(ARGS_TOWIRE) { isc_region_t sr; dns_name_t name; + dns_offsets_t offsets; REQUIRE(rdata->type == 249); REQUIRE(rdata->length != 0); @@ -301,7 +302,7 @@ towire_tkey(ARGS_TOWIRE) { * Algorithm. */ dns_rdata_toregion(rdata, &sr); - dns_name_init(&name, NULL); + dns_name_init(&name, offsets); dns_name_fromregion(&name, &sr); RETERR(dns_name_towire(&name, cctx, target)); isc_region_consume(&sr, name_length(&name)); diff --git a/lib/dns/rdata/in_1/a6_38.c b/lib/dns/rdata/in_1/a6_38.c index 4888267a56..ce06fe4429 100644 --- a/lib/dns/rdata/in_1/a6_38.c +++ b/lib/dns/rdata/in_1/a6_38.c @@ -15,7 +15,7 @@ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: a6_38.c,v 1.41 2001/01/25 20:14:39 bwelling Exp $ */ +/* $Id: a6_38.c,v 1.42 2001/02/12 03:04:59 bwelling Exp $ */ /* draft-ietf-ipngwg-dns-lookups-03.txt */ @@ -183,6 +183,7 @@ static inline isc_result_t towire_in_a6(ARGS_TOWIRE) { isc_region_t sr; dns_name_t name; + dns_offsets_t offsets; unsigned char prefixlen; unsigned char octets; @@ -202,7 +203,7 @@ towire_in_a6(ARGS_TOWIRE) { if (prefixlen == 0) return (ISC_R_SUCCESS); - dns_name_init(&name, NULL); + dns_name_init(&name, offsets); dns_name_fromregion(&name, &sr); return (dns_name_towire(&name, cctx, target)); } diff --git a/lib/dns/rdata/in_1/kx_36.c b/lib/dns/rdata/in_1/kx_36.c index 0c103ce536..6210348122 100644 --- a/lib/dns/rdata/in_1/kx_36.c +++ b/lib/dns/rdata/in_1/kx_36.c @@ -15,7 +15,7 @@ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: kx_36.c,v 1.33 2001/01/09 21:55:07 bwelling Exp $ */ +/* $Id: kx_36.c,v 1.34 2001/02/12 03:05:00 bwelling Exp $ */ /* Reviewed: Thu Mar 16 17:24:54 PST 2000 by explorer */ @@ -105,6 +105,7 @@ fromwire_in_kx(ARGS_FROMWIRE) { static inline isc_result_t towire_in_kx(ARGS_TOWIRE) { dns_name_t name; + dns_offsets_t offsets; isc_region_t region; REQUIRE(rdata->type == 36); @@ -116,7 +117,7 @@ towire_in_kx(ARGS_TOWIRE) { RETERR(mem_tobuffer(target, region.base, 2)); isc_region_consume(®ion, 2); - dns_name_init(&name, NULL); + dns_name_init(&name, offsets); dns_name_fromregion(&name, ®ion); return (dns_name_towire(&name, cctx, target)); @@ -220,12 +221,13 @@ freestruct_in_kx(ARGS_FREESTRUCT) { static inline isc_result_t additionaldata_in_kx(ARGS_ADDLDATA) { dns_name_t name; + dns_offsets_t offsets; isc_region_t region; REQUIRE(rdata->type == 36); REQUIRE(rdata->rdclass == 1); - dns_name_init(&name, NULL); + dns_name_init(&name, offsets); dns_rdata_toregion(rdata, ®ion); isc_region_consume(®ion, 2); dns_name_fromregion(&name, ®ion); diff --git a/lib/dns/rdata/in_1/naptr_35.c b/lib/dns/rdata/in_1/naptr_35.c index d68004b543..68bfb6b271 100644 --- a/lib/dns/rdata/in_1/naptr_35.c +++ b/lib/dns/rdata/in_1/naptr_35.c @@ -15,7 +15,7 @@ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: naptr_35.c,v 1.38 2001/01/18 22:05:40 bwelling Exp $ */ +/* $Id: naptr_35.c,v 1.39 2001/02/12 03:05:01 bwelling Exp $ */ /* Reviewed: Thu Mar 16 16:52:50 PST 2000 by bwelling */ @@ -196,6 +196,7 @@ fromwire_in_naptr(ARGS_FROMWIRE) { static inline isc_result_t towire_in_naptr(ARGS_TOWIRE) { dns_name_t name; + dns_offsets_t offsets; isc_region_t sr; REQUIRE(rdata->type == 35); @@ -231,7 +232,7 @@ towire_in_naptr(ARGS_TOWIRE) { /* * Replacement. */ - dns_name_init(&name, NULL); + dns_name_init(&name, offsets); dns_name_fromregion(&name, &sr); return (dns_name_towire(&name, cctx, target)); } @@ -438,6 +439,7 @@ freestruct_in_naptr(ARGS_FREESTRUCT) { static inline isc_result_t additionaldata_in_naptr(ARGS_ADDLDATA) { dns_name_t name; + dns_offsets_t offsets; isc_region_t sr; dns_rdatatype_t atype; unsigned int i, flagslen; @@ -483,7 +485,7 @@ additionaldata_in_naptr(ARGS_ADDLDATA) { /* * Replacement. */ - dns_name_init(&name, NULL); + dns_name_init(&name, offsets); dns_name_fromregion(&name, &sr); if (atype != 0) diff --git a/lib/dns/rdata/in_1/nsap-ptr_23.c b/lib/dns/rdata/in_1/nsap-ptr_23.c index 1f6ee81545..fdc4cbf91f 100644 --- a/lib/dns/rdata/in_1/nsap-ptr_23.c +++ b/lib/dns/rdata/in_1/nsap-ptr_23.c @@ -15,7 +15,7 @@ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: nsap-ptr_23.c,v 1.28 2001/01/09 21:55:12 bwelling Exp $ */ +/* $Id: nsap-ptr_23.c,v 1.29 2001/02/12 03:05:02 bwelling Exp $ */ /* Reviewed: Fri Mar 17 10:16:02 PST 2000 by gson */ @@ -86,6 +86,7 @@ fromwire_in_nsap_ptr(ARGS_FROMWIRE) { static inline isc_result_t towire_in_nsap_ptr(ARGS_TOWIRE) { dns_name_t name; + dns_offsets_t offsets; isc_region_t region; REQUIRE(rdata->type == 23); @@ -93,7 +94,7 @@ towire_in_nsap_ptr(ARGS_TOWIRE) { REQUIRE(rdata->length != 0); dns_compress_setmethods(cctx, DNS_COMPRESS_NONE); - dns_name_init(&name, NULL); + dns_name_init(&name, offsets); dns_rdata_toregion(rdata, ®ion); dns_name_fromregion(&name, ®ion); diff --git a/lib/dns/rdata/in_1/px_26.c b/lib/dns/rdata/in_1/px_26.c index 3a29fed6d7..10abbf035e 100644 --- a/lib/dns/rdata/in_1/px_26.c +++ b/lib/dns/rdata/in_1/px_26.c @@ -15,7 +15,7 @@ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: px_26.c,v 1.30 2001/01/09 21:55:16 bwelling Exp $ */ +/* $Id: px_26.c,v 1.31 2001/02/12 03:05:03 bwelling Exp $ */ /* Reviewed: Mon Mar 20 10:44:27 PST 2000 */ @@ -147,6 +147,7 @@ fromwire_in_px(ARGS_FROMWIRE) { static inline isc_result_t towire_in_px(ARGS_TOWIRE) { dns_name_t name; + dns_offsets_t offsets; isc_region_t region; REQUIRE(rdata->type == 26); @@ -164,7 +165,7 @@ towire_in_px(ARGS_TOWIRE) { /* * MAP822. */ - dns_name_init(&name, NULL); + dns_name_init(&name, offsets); dns_name_fromregion(&name, ®ion); RETERR(dns_name_towire(&name, cctx, target)); isc_region_consume(®ion, name_length(&name)); @@ -172,7 +173,7 @@ towire_in_px(ARGS_TOWIRE) { /* * MAPX400. */ - dns_name_init(&name, NULL); + dns_name_init(&name, offsets); dns_name_fromregion(&name, ®ion); return (dns_name_towire(&name, cctx, target)); } diff --git a/lib/dns/rdata/in_1/srv_33.c b/lib/dns/rdata/in_1/srv_33.c index 4e2b932eb8..0548695034 100644 --- a/lib/dns/rdata/in_1/srv_33.c +++ b/lib/dns/rdata/in_1/srv_33.c @@ -15,7 +15,7 @@ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: srv_33.c,v 1.32 2001/01/09 21:55:19 bwelling Exp $ */ +/* $Id: srv_33.c,v 1.33 2001/02/12 03:05:05 bwelling Exp $ */ /* Reviewed: Fri Mar 17 13:01:00 PST 2000 by bwelling */ @@ -159,6 +159,7 @@ fromwire_in_srv(ARGS_FROMWIRE) { static inline isc_result_t towire_in_srv(ARGS_TOWIRE) { dns_name_t name; + dns_offsets_t offsets; isc_region_t sr; REQUIRE(rdata->type == 33); @@ -175,7 +176,7 @@ towire_in_srv(ARGS_TOWIRE) { /* * Target. */ - dns_name_init(&name, NULL); + dns_name_init(&name, offsets); dns_name_fromregion(&name, &sr); return (dns_name_towire(&name, cctx, target)); } @@ -288,12 +289,13 @@ freestruct_in_srv(ARGS_FREESTRUCT) { static inline isc_result_t additionaldata_in_srv(ARGS_ADDLDATA) { dns_name_t name; + dns_offsets_t offsets; isc_region_t region; REQUIRE(rdata->type == 33); REQUIRE(rdata->rdclass == 1); - dns_name_init(&name, NULL); + dns_name_init(&name, offsets); dns_rdata_toregion(rdata, ®ion); isc_region_consume(®ion, 6); dns_name_fromregion(&name, ®ion);