summaryrefslogtreecommitdiff
path: root/lib/dns/rdata/generic/tlsa_52.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/dns/rdata/generic/tlsa_52.c')
-rw-r--r--lib/dns/rdata/generic/tlsa_52.c80
1 files changed, 64 insertions, 16 deletions
diff --git a/lib/dns/rdata/generic/tlsa_52.c b/lib/dns/rdata/generic/tlsa_52.c
index d09a5289a805d..cbb73775ebe27 100644
--- a/lib/dns/rdata/generic/tlsa_52.c
+++ b/lib/dns/rdata/generic/tlsa_52.c
@@ -14,8 +14,6 @@
* PERFORMANCE OF THIS SOFTWARE.
*/
-/* $Id$ */
-
/* rfc6698.txt */
#ifndef RDATA_GENERIC_TLSA_52_C
@@ -24,11 +22,9 @@
#define RRTYPE_TLSA_ATTRIBUTES 0
static inline isc_result_t
-fromtext_tlsa(ARGS_FROMTEXT) {
+generic_fromtext_tlsa(ARGS_FROMTEXT) {
isc_token_t token;
- REQUIRE(type == dns_rdatatype_tlsa);
-
UNUSED(type);
UNUSED(rdclass);
UNUSED(origin);
@@ -69,12 +65,11 @@ fromtext_tlsa(ARGS_FROMTEXT) {
}
static inline isc_result_t
-totext_tlsa(ARGS_TOTEXT) {
+generic_totext_tlsa(ARGS_TOTEXT) {
isc_region_t sr;
char buf[sizeof("64000 ")];
unsigned int n;
- REQUIRE(rdata->type == dns_rdatatype_tlsa);
REQUIRE(rdata->length != 0);
UNUSED(tctx);
@@ -122,11 +117,9 @@ totext_tlsa(ARGS_TOTEXT) {
}
static inline isc_result_t
-fromwire_tlsa(ARGS_FROMWIRE) {
+generic_fromwire_tlsa(ARGS_FROMWIRE) {
isc_region_t sr;
- REQUIRE(type == dns_rdatatype_tlsa);
-
UNUSED(type);
UNUSED(rdclass);
UNUSED(dctx);
@@ -142,6 +135,32 @@ fromwire_tlsa(ARGS_FROMWIRE) {
}
static inline isc_result_t
+fromtext_tlsa(ARGS_FROMTEXT) {
+
+ REQUIRE(type == dns_rdatatype_tlsa);
+
+ return (generic_fromtext_tlsa(rdclass, type, lexer, origin, options,
+ target, callbacks));
+}
+
+static inline isc_result_t
+totext_tlsa(ARGS_TOTEXT) {
+
+ REQUIRE(rdata->type == dns_rdatatype_tlsa);
+
+ return (generic_totext_tlsa(rdata, tctx, target));
+}
+
+static inline isc_result_t
+fromwire_tlsa(ARGS_FROMWIRE) {
+
+ REQUIRE(type == dns_rdatatype_tlsa);
+
+ return (generic_fromwire_tlsa(rdclass, type, source, dctx, options,
+ target));
+}
+
+static inline isc_result_t
towire_tlsa(ARGS_TOWIRE) {
isc_region_t sr;
@@ -171,10 +190,9 @@ compare_tlsa(ARGS_COMPARE) {
}
static inline isc_result_t
-fromstruct_tlsa(ARGS_FROMSTRUCT) {
+generic_fromstruct_tlsa(ARGS_FROMSTRUCT) {
dns_rdata_tlsa_t *tlsa = source;
- REQUIRE(type == dns_rdatatype_tlsa);
REQUIRE(source != NULL);
REQUIRE(tlsa->common.rdtype == type);
REQUIRE(tlsa->common.rdclass == rdclass);
@@ -190,11 +208,10 @@ fromstruct_tlsa(ARGS_FROMSTRUCT) {
}
static inline isc_result_t
-tostruct_tlsa(ARGS_TOSTRUCT) {
+generic_tostruct_tlsa(ARGS_TOSTRUCT) {
dns_rdata_tlsa_t *tlsa = target;
isc_region_t region;
- REQUIRE(rdata->type == dns_rdatatype_tlsa);
REQUIRE(target != NULL);
REQUIRE(rdata->length != 0);
@@ -221,11 +238,10 @@ tostruct_tlsa(ARGS_TOSTRUCT) {
}
static inline void
-freestruct_tlsa(ARGS_FREESTRUCT) {
+generic_freestruct_tlsa(ARGS_FREESTRUCT) {
dns_rdata_tlsa_t *tlsa = source;
REQUIRE(tlsa != NULL);
- REQUIRE(tlsa->common.rdtype == dns_rdatatype_tlsa);
if (tlsa->mctx == NULL)
return;
@@ -236,6 +252,38 @@ freestruct_tlsa(ARGS_FREESTRUCT) {
}
static inline isc_result_t
+fromstruct_tlsa(ARGS_FROMSTRUCT) {
+
+ REQUIRE(type == dns_rdatatype_tlsa);
+
+ return (generic_fromstruct_tlsa(rdclass, type, source, target));
+}
+
+static inline isc_result_t
+tostruct_tlsa(ARGS_TOSTRUCT) {
+ dns_rdata_txt_t *txt = target;
+
+ REQUIRE(rdata->type == dns_rdatatype_tlsa);
+ REQUIRE(target != NULL);
+
+ txt->common.rdclass = rdata->rdclass;
+ txt->common.rdtype = rdata->type;
+ ISC_LINK_INIT(&txt->common, link);
+
+ return (generic_tostruct_tlsa(rdata, target, mctx));
+}
+
+static inline void
+freestruct_tlsa(ARGS_FREESTRUCT) {
+ dns_rdata_txt_t *txt = source;
+
+ REQUIRE(source != NULL);
+ REQUIRE(txt->common.rdtype == dns_rdatatype_tlsa);
+
+ generic_freestruct_tlsa(source);
+}
+
+static inline isc_result_t
additionaldata_tlsa(ARGS_ADDLDATA) {
REQUIRE(rdata->type == dns_rdatatype_tlsa);