From 396e149f321c2b7c2d3f37e86c1a45675f7acdde Mon Sep 17 00:00:00 2001 From: Bob Halley Date: Mon, 2 Aug 1999 22:17:36 +0000 Subject: [PATCH] additional data support --- lib/dns/include/dns/rdataset.h | 28 ++++++++++++++++++++++++++++ lib/dns/include/dns/types.h | 3 +++ 2 files changed, 31 insertions(+) diff --git a/lib/dns/include/dns/rdataset.h b/lib/dns/include/dns/rdataset.h index a069acac26..6519bfc4c1 100644 --- a/lib/dns/include/dns/rdataset.h +++ b/lib/dns/include/dns/rdataset.h @@ -289,6 +289,34 @@ dns_rdataset_towire(dns_rdataset_t *rdataset, * dns_name_towire(). */ +dns_result_t +dns_rdataset_additionaldata(dns_rdataset_t *rdataset, + dns_additionaldatafunc_t add, void *arg); +/* + * For each rdata in rdataset, call 'add' for each name and type in the + * rdata which is subject to additional section processing. + * + * Requires: + * + * 'rdataset' is a valid, non-question rdataset. + * + * 'add' is a valid dns_additionaldatafunc_t + * + * Ensures: + * + * If successful, dns_rdata_additionaldata() will have been called for + * each rdata in 'rdataset'. + * + * If a call to dns_rdata_additionaldata() is not successful, the + * result returned will be the result of dns_rdataset_additionaldata(). + * + * Returns: + * + * DNS_R_SUCCESS + * + * Any error that dns_rdata_additionaldata() can return. + */ + ISC_LANG_ENDDECLS #endif /* DNS_RDATASET_H */ diff --git a/lib/dns/include/dns/types.h b/lib/dns/include/dns/types.h index 7ebee22dd0..3ddfbc9e73 100644 --- a/lib/dns/include/dns/types.h +++ b/lib/dns/include/dns/types.h @@ -162,6 +162,9 @@ enum { typedef isc_result_t (*dns_addrdatasetfunc_t)(void *, dns_name_t *, dns_rdataset_t *); +typedef isc_result_t +(*dns_additionaldatafunc_t)(void *, dns_name_t *, dns_rdatatype_t); + ISC_LANG_ENDDECLS #endif /* DNS_TYPES_H */