#include <isc/lang.h>
#include <isc/magic.h>
#include <isc/stdtime.h>
#include <dns/types.h>
#include <dns/rdatastruct.h>
Go to the source code of this file.
Data Structures | |
struct | dns_rdatasetmethods |
struct | dns_rdataset |
Direct use of this structure by clients is strongly discouraged, except for the 'link' field which may be used however the client wishes. The 'private', 'current', and 'index' fields MUST NOT be changed by clients. rdataset implementations may change any of the fields. More... | |
Defines | |
#define | DNS_RDATASET_H 1 |
#define | DNS_RDATASET_MAGIC ISC_MAGIC('D','N','S','R') |
#define | DNS_RDATASET_VALID(set) ISC_MAGIC_VALID(set, DNS_RDATASET_MAGIC) |
#define | DNS_RDATASETATTR_QUESTION 0x00000001 |
#define | DNS_RDATASETATTR_RENDERED 0x00000002 |
Used by message.c. | |
#define | DNS_RDATASETATTR_ANSWERED 0x00000004 |
Used by server. | |
#define | DNS_RDATASETATTR_CACHE 0x00000008 |
Used by resolver. | |
#define | DNS_RDATASETATTR_ANSWER 0x00000010 |
Used by resolver. | |
#define | DNS_RDATASETATTR_ANSWERSIG 0x00000020 |
Used by resolver. | |
#define | DNS_RDATASETATTR_EXTERNAL 0x00000040 |
Used by resolver. | |
#define | DNS_RDATASETATTR_NCACHE 0x00000080 |
Used by resolver. | |
#define | DNS_RDATASETATTR_CHAINING 0x00000100 |
Used by resolver. | |
#define | DNS_RDATASETATTR_TTLADJUSTED 0x00000200 |
Used by message.c. | |
#define | DNS_RDATASETATTR_FIXEDORDER 0x00000400 |
#define | DNS_RDATASETATTR_RANDOMIZE 0x00000800 |
#define | DNS_RDATASETATTR_CHASE 0x00001000 |
Used by resolver. | |
#define | DNS_RDATASETATTR_NXDOMAIN 0x00002000 |
#define | DNS_RDATASETATTR_NOQNAME 0x00004000 |
#define | DNS_RDATASETATTR_CHECKNAMES 0x00008000 |
Used by resolver. | |
#define | DNS_RDATASETATTR_REQUIRED 0x00010000 |
#define | DNS_RDATASETATTR_REQUIREDGLUE DNS_RDATASETATTR_REQUIRED |
#define | DNS_RDATASETATTR_LOADORDER 0x00020000 |
#define | DNS_RDATASETATTR_RESIGN 0x00040000 |
#define | DNS_RDATASETATTR_CLOSEST 0x00080000 |
#define | DNS_RDATASETATTR_OPTOUT 0x00100000 |
OPTOUT proof. | |
#define | DNS_RDATASETATTR_NEGATIVE 0x00200000 |
#define | DNS_RDATASETATTR_PREFETCH 0x00400000 |
#define | DNS_RDATASETTOWIRE_OMITDNSSEC 0x0001 |
_OMITDNSSEC: Omit DNSSEC records when rendering ncache records. | |
Typedefs | |
typedef struct dns_rdatasetmethods | dns_rdatasetmethods_t |
Enumerations | |
enum | dns_rdatasetadditional_t { dns_rdatasetadditional_fromauth, dns_rdatasetadditional_fromcache, dns_rdatasetadditional_fromglue } |
Functions | |
void | dns_rdataset_init (dns_rdataset_t *rdataset) |
Make 'rdataset' a valid, disassociated rdataset. | |
void | dns_rdataset_invalidate (dns_rdataset_t *rdataset) |
Invalidate 'rdataset'. | |
void | dns_rdataset_disassociate (dns_rdataset_t *rdataset) |
Disassociate 'rdataset' from its rdata, allowing it to be reused. | |
isc_boolean_t | dns_rdataset_isassociated (dns_rdataset_t *rdataset) |
Is 'rdataset' associated? | |
void | dns_rdataset_makequestion (dns_rdataset_t *rdataset, dns_rdataclass_t rdclass, dns_rdatatype_t type) |
Make 'rdataset' a valid, associated, question rdataset, with a question class of 'rdclass' and type 'type'. | |
void | dns_rdataset_clone (dns_rdataset_t *source, dns_rdataset_t *target) |
Make 'target' refer to the same rdataset as 'source'. | |
unsigned int | dns_rdataset_count (dns_rdataset_t *rdataset) |
Return the number of records in 'rdataset'. | |
isc_result_t | dns_rdataset_first (dns_rdataset_t *rdataset) |
Move the rdata cursor to the first rdata in the rdataset (if any). | |
isc_result_t | dns_rdataset_next (dns_rdataset_t *rdataset) |
Move the rdata cursor to the next rdata in the rdataset (if any). | |
void | dns_rdataset_current (dns_rdataset_t *rdataset, dns_rdata_t *rdata) |
Make 'rdata' refer to the current rdata. | |
isc_result_t | dns_rdataset_totext (dns_rdataset_t *rdataset, dns_name_t *owner_name, isc_boolean_t omit_final_dot, isc_boolean_t question, isc_buffer_t *target) |
Convert 'rdataset' to text format, storing the result in 'target'. | |
isc_result_t | dns_rdataset_towire (dns_rdataset_t *rdataset, dns_name_t *owner_name, dns_compress_t *cctx, isc_buffer_t *target, unsigned int options, unsigned int *countp) |
Convert 'rdataset' to wire format, compressing names as specified in 'cctx', and storing the result in 'target'. | |
isc_result_t | dns_rdataset_towiresorted (dns_rdataset_t *rdataset, const dns_name_t *owner_name, dns_compress_t *cctx, isc_buffer_t *target, dns_rdatasetorderfunc_t order, const void *order_arg, unsigned int options, unsigned int *countp) |
Like dns_rdataset_towire(), but sorting the rdatasets according to the integer value returned by 'order' when called with the rdataset and 'order_arg' as arguments. | |
isc_result_t | dns_rdataset_towirepartial (dns_rdataset_t *rdataset, const dns_name_t *owner_name, dns_compress_t *cctx, isc_buffer_t *target, dns_rdatasetorderfunc_t order, const void *order_arg, unsigned int options, unsigned int *countp, void **state) |
Like dns_rdataset_towiresorted() except that a partial rdataset may be written. | |
isc_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. | |
isc_result_t | dns_rdataset_getnoqname (dns_rdataset_t *rdataset, dns_name_t *name, dns_rdataset_t *neg, dns_rdataset_t *negsig) |
Return the noqname proof for this record. | |
isc_result_t | dns_rdataset_addnoqname (dns_rdataset_t *rdataset, dns_name_t *name) |
Associate a noqname proof with this record. Sets DNS_RDATASETATTR_NOQNAME if successful. Adjusts the 'rdataset->ttl' to minimum of the 'rdataset->ttl' and the 'nsec'/'nsec3' and 'rrsig(nsec)'/'rrsig(nsec3)' ttl. | |
isc_result_t | dns_rdataset_getclosest (dns_rdataset_t *rdataset, dns_name_t *name, dns_rdataset_t *nsec, dns_rdataset_t *nsecsig) |
Return the closest encloser for this record. | |
isc_result_t | dns_rdataset_addclosest (dns_rdataset_t *rdataset, dns_name_t *name) |
Associate a closest encloset proof with this record. Sets DNS_RDATASETATTR_CLOSEST if successful. Adjusts the 'rdataset->ttl' to minimum of the 'rdataset->ttl' and the 'nsec' and 'rrsig(nsec)' ttl. | |
isc_result_t | dns_rdataset_getadditional (dns_rdataset_t *rdataset, dns_rdatasetadditional_t type, dns_rdatatype_t qtype, dns_acache_t *acache, dns_zone_t **zonep, dns_db_t **dbp, dns_dbversion_t **versionp, dns_dbnode_t **nodep, dns_name_t *fname, dns_message_t *msg, isc_stdtime_t now) |
Get cached additional information from the DB node for a particular 'rdataset.' 'type' is one of dns_rdatasetadditional_fromauth, dns_rdatasetadditional_fromcache, and dns_rdatasetadditional_fromglue, which specifies the origin of the information. 'qtype' is intended to be used for specifying a particular rdata type in the cached information. | |
isc_result_t | dns_rdataset_setadditional (dns_rdataset_t *rdataset, dns_rdatasetadditional_t type, dns_rdatatype_t qtype, dns_acache_t *acache, dns_zone_t *zone, dns_db_t *db, dns_dbversion_t *version, dns_dbnode_t *node, dns_name_t *fname) |
Set cached additional information to the DB node for a particular 'rdataset.' See dns_rdataset_getadditional for the semantics of 'type' and 'qtype'. | |
isc_result_t | dns_rdataset_putadditional (dns_acache_t *acache, dns_rdataset_t *rdataset, dns_rdatasetadditional_t type, dns_rdatatype_t qtype) |
Discard cached additional information stored in the DB node for a particular 'rdataset.' See dns_rdataset_getadditional for the semantics of 'type' and 'qtype'. | |
void | dns_rdataset_settrust (dns_rdataset_t *rdataset, dns_trust_t trust) |
Set the trust of the 'rdataset' to trust in any in the backing database. The local trust level of 'rdataset' is also set. | |
void | dns_rdataset_expire (dns_rdataset_t *rdataset) |
Mark the rdataset to be expired in the backing database. | |
void | dns_rdataset_clearprefetch (dns_rdataset_t *rdataset) |
Clear the PREFETCH attribute for the given rdataset in the underlying database. | |
void | dns_rdataset_setownercase (dns_rdataset_t *rdataset, const dns_name_t *name) |
Store the casing of 'name', the owner name of 'rdataset', into a bitfield so that the name can be capitalized the same when when the rdataset is used later. This sets the CASESET attribute. | |
void | dns_rdataset_getownercase (const dns_rdataset_t *rdataset, dns_name_t *name) |
If the CASESET attribute is set, retrieve the case bitfield that was previously stored by dns_rdataset_getownername(), and capitalize 'name' according to it. If CASESET is not set, do nothing. | |
void | dns_rdataset_trimttl (dns_rdataset_t *rdataset, dns_rdataset_t *sigrdataset, dns_rdata_rrsig_t *rrsig, isc_stdtime_t now, isc_boolean_t acceptexpired) |
Trim the ttl of 'rdataset' and 'sigrdataset' so that they will expire at or before 'rrsig->expiretime'. If 'acceptexpired' is true and the signature has expired or will expire in the next 120 seconds, limit the ttl to be no more than 120 seconds. | |
const char * | dns_trust_totext (dns_trust_t trust) |
Display trust in textual form. |
The dns_rdataset_t type is like a "virtual class". To actually use rdatasets, an implementation of the method suite (e.g. "slabbed rdata") is required.
XXX <more> XXX
MP:
Definition in file rdataset.h.
#define DNS_RDATASET_H 1 |
Definition at line 19 of file rdataset.h.
#define DNS_RDATASET_MAGIC ISC_MAGIC('D','N','S','R') |
#define DNS_RDATASET_VALID | ( | set | ) | ISC_MAGIC_VALID(set, DNS_RDATASET_MAGIC) |
Definition at line 122 of file rdataset.h.
Referenced by dns_db_addrdataset(), dns_db_find(), dns_db_findext(), dns_db_findrdataset(), dns_db_findzonecut(), dns_db_subtractrdataset(), dns_rdatalist_tordataset(), dns_rdataset_addclosest(), dns_rdataset_additionaldata(), dns_rdataset_addnoqname(), dns_rdataset_clearprefetch(), dns_rdataset_clone(), dns_rdataset_count(), dns_rdataset_current(), dns_rdataset_disassociate(), dns_rdataset_expire(), dns_rdataset_first(), dns_rdataset_getadditional(), dns_rdataset_getclosest(), dns_rdataset_getnoqname(), dns_rdataset_getownercase(), dns_rdataset_invalidate(), dns_rdataset_isassociated(), dns_rdataset_makequestion(), dns_rdataset_next(), dns_rdataset_putadditional(), dns_rdataset_setadditional(), dns_rdataset_setownercase(), dns_rdataset_settrust(), dns_rdataset_trimttl(), dns_rdatasetiter_current(), dns_resolver_createfetch3(), dump_rdataset_raw(), question_totext(), rdataset_totext(), and towiresorted().
#define DNS_RDATASETATTR_QUESTION 0x00000001 |
Definition at line 188 of file rdataset.h.
Referenced by dns_rdataset_additionaldata(), dns_rdataset_makequestion(), getquestions(), and towiresorted().
#define DNS_RDATASETATTR_RENDERED 0x00000002 |
Used by message.c.
Used by message.c to indicate that the rdataset was rendered.
Definition at line 189 of file rdataset.h.
Referenced by dns_message_renderreset(), and dns_message_rendersection().
#define DNS_RDATASETATTR_ANSWERED 0x00000004 |
#define DNS_RDATASETATTR_CACHE 0x00000008 |
Used by resolver.
Definition at line 191 of file rdataset.h.
Referenced by answer_response(), mark_related(), and noanswer_response().
#define DNS_RDATASETATTR_ANSWER 0x00000010 |
#define DNS_RDATASETATTR_ANSWERSIG 0x00000020 |
#define DNS_RDATASETATTR_EXTERNAL 0x00000040 |
Used by resolver.
Definition at line 194 of file rdataset.h.
Referenced by answer_response(), and mark_related().
#define DNS_RDATASETATTR_NCACHE 0x00000080 |
Used by resolver.
Definition at line 195 of file rdataset.h.
Referenced by addoptout(), and noanswer_response().
#define DNS_RDATASETATTR_CHAINING 0x00000100 |
#define DNS_RDATASETATTR_TTLADJUSTED 0x00000200 |
Used by message.c.
Used by message.c to indicate that the rdataset's rdata had differing TTL values, and the rdataset->ttl holds the smallest.
Definition at line 197 of file rdataset.h.
Referenced by getsection().
#define DNS_RDATASETATTR_FIXEDORDER 0x00000400 |
#define DNS_RDATASETATTR_RANDOMIZE 0x00000800 |
#define DNS_RDATASETATTR_CHASE 0x00001000 |
Used by resolver.
Definition at line 200 of file rdataset.h.
Referenced by chase_additional(), and mark_related().
#define DNS_RDATASETATTR_NXDOMAIN 0x00002000 |
Definition at line 201 of file rdataset.h.
Referenced by addoptout(), addrdataset(), and bind_rdataset().
#define DNS_RDATASETATTR_NOQNAME 0x00004000 |
Definition at line 202 of file rdataset.h.
Referenced by addrdataset(), bind_rdataset(), isc__rdatalist_addnoqname(), and isc__rdatalist_getnoqname().
#define DNS_RDATASETATTR_CHECKNAMES 0x00008000 |
#define DNS_RDATASETATTR_REQUIRED 0x00010000 |
Definition at line 204 of file rdataset.h.
Referenced by answer_in_glue(), query_addrrset(), and query_addsoa().
#define DNS_RDATASETATTR_REQUIREDGLUE DNS_RDATASETATTR_REQUIRED |
#define DNS_RDATASETATTR_LOADORDER 0x00020000 |
Output the RRset in load order.
Definition at line 206 of file rdataset.h.
Referenced by dns_rriterator_first(), dns_rriterator_nextrrset(), dump_rdataset_raw(), query_addrdataset(), rdataset_current(), rdataset_first(), rdataset_next(), and rdataset_totext().
#define DNS_RDATASETATTR_RESIGN 0x00040000 |
Definition at line 207 of file rdataset.h.
Referenced by addrdataset(), bind_rdataset(), commit(), dump_rdatasets_text(), loading_addrdataset(), resigned(), and subtractrdataset().
#define DNS_RDATASETATTR_CLOSEST 0x00080000 |
Definition at line 208 of file rdataset.h.
Referenced by addrdataset(), bind_rdataset(), isc__rdatalist_addclosest(), isc__rdatalist_getclosest(), and query_addnoqnameproof().
#define DNS_RDATASETATTR_OPTOUT 0x00100000 |
OPTOUT proof.
Definition at line 209 of file rdataset.h.
Referenced by addoptout(), addrdataset(), and bind_rdataset().
#define DNS_RDATASETATTR_NEGATIVE 0x00200000 |
Definition at line 210 of file rdataset.h.
Referenced by addoptout(), addrdataset(), bind_rdataset(), dns_ncache_current(), dns_ncache_getrdataset(), dns_ncache_getsigrdataset(), dns_ncache_towire(), dump_rdatasets_raw(), dump_rdatasets_text(), query_find(), rdataset_totext(), redirect(), redirect2(), rpz_ck_dnssec(), and towiresorted().
#define DNS_RDATASETATTR_PREFETCH 0x00400000 |
Definition at line 211 of file rdataset.h.
Referenced by addrdataset(), bind_rdataset(), cache_name(), and query_prefetch().
#define DNS_RDATASETTOWIRE_OMITDNSSEC 0x0001 |
_OMITDNSSEC: Omit DNSSEC records when rendering ncache records.
Definition at line 217 of file rdataset.h.
Referenced by dns_message_rendersection(), and towiresorted().
typedef struct dns_rdatasetmethods dns_rdatasetmethods_t |
dns_rdatasetadditional_fromauth | |
dns_rdatasetadditional_fromcache | |
dns_rdatasetadditional_fromglue |
Definition at line 61 of file rdataset.h.
void dns_rdataset_init | ( | dns_rdataset_t * | rdataset | ) |
Make 'rdataset' a valid, disassociated rdataset.
Requires:
Definition at line 60 of file rdataset.c.
References dns_rdataset::attributes, dns_rdataset::count, dns_rdataset::covers, DNS_RDATASET_MAGIC, ISC_LINK_INIT, ISC_UINT32_MAX, dns_rdataset::magic, dns_rdataset::methods, dns_rdataset::private1, dns_rdataset::private2, dns_rdataset::private3, dns_rdataset::private5, dns_rdataset::private6, dns_rdataset::private7, dns_rdataset::privateuint4, dns_rdataset::rdclass, REQUIRE, dns_rdataset::resign, dns_rdataset::trust, dns_rdataset::ttl, and dns_rdataset::type.
Referenced by active_node(), add_ds(), add_exposed_sigs(), add_ns(), add_question(), add_rdata_to_list(), add_sigs(), add_soa(), addclosest(), addnoqname(), addnsec3(), addnsec3param(), addoptout(), addrdataset(), assignwork(), ATF_TC_BODY(), better_param(), build_event(), buildquery(), check_address_records(), check_hints(), check_no_nsec(), check_no_rrsig(), check_node(), check_nsec3param(), check_ttls(), checkandaddsoa(), checkwildcard(), cleannode(), cleanup_zone(), clearnode(), commit(), configure_staticstub(), copy_name(), create_query(), dbfind_name(), del_keysigs(), del_sig(), del_sigs(), delete(), delete_nsec(), deletematchingnsec3(), deleterdataset(), diff_apply(), diff_tuple_tordataset(), dlv_validatezonekey(), dns64_ttl(), dns_acache_getentry(), dns_acache_setentry(), dns_client_updaterec(), dns_db_createsoatuple(), dns_db_getsoaserial(), dns_diff_load(), dns_dnssec_findzonekeys2(), dns_dnssec_keylistfromrdataset(), dns_dnssec_signmessage(), dns_lookup_create(), dns_message_buildopt(), dns_message_checksig(), dns_message_gettemprdataset(), dns_ncache_getrdataset(), dns_ncache_getsigrdataset(), dns_nsec3_activex(), dns_nsec3_addnsec3(), dns_nsec3_addnsec3s(), dns_nsec3_addnsec3sx(), dns_nsec3_buildrdata(), dns_nsec3_delnsec3(), dns_nsec3_delnsec3sx(), dns_nsec3_maxiterations(), dns_nsec3param_deletechains(), dns_nsec_build(), dns_nsec_buildrdata(), dns_nsec_nseconly(), dns_private_chains(), dns_resolver_prime(), dns_root_checkhints(), dns_rriterator_init(), dns_tsig_sign(), dns_update_signaturesinc(), dns_validator_create(), dns_view_find2(), dns_view_findzonecut2(), dump_rdatasets_raw(), dump_rdatasets_text(), dumpnode(), fctx_create(), fetch_name(), find(), findext(), findnsec3proofs(), findrdataset(), fixup_nsec3param(), foreach_rr(), foreach_rrset(), get_iterations(), get_name_diff(), get_soa_ttls(), getquestions(), getrdataset(), getsection(), insert_soa(), integrity_checks(), is_delegation(), isdelegation(), isoptout(), iszonesecure(), iterate_node(), keydone(), loadds(), loadkeyset(), loadzonekeys(), log_rr(), main(), make_prereq(), mark_active_keys(), ncache_adderesult(), ncache_summary(), need_nsec_chain(), new_adbfetch(), notify_createmessage(), ns_server_signing(), ns_server_zonestatus(), nsec3clean(), nsec3ify(), nsecify(), nta_create(), query_add_cname(), query_dns64(), query_filter64(), query_find(), query_newrdataset(), rdataset_to_sortedarray(), receive_secure_db(), record_found(), redirect(), redirect2(), remove_records(), remove_sigs(), resigned(), resquery_send(), resume_addnsec3chain(), resume_dslookup(), resume_signingwithkey(), rpz_ck_dnssec(), rr_exists(), rrset_cleanup(), save_nsec3param(), secure(), sendstream(), set_nsec3params(), set_resigntime(), setsoaserial(), sign_a_node(), signed_with_key(), signname(), signset(), subtract(), temp_check(), tuple2msgname(), update_addordelete(), updatesecure(), updatesignwithkey(), validate(), validatezonekey(), verifynode(), verifynsec(), verifynsec3(), verifyset(), verifyzone(), warn_rfc1918(), warnifallksk(), xfrin_send_request(), zone_check_dnskeys(), zone_check_dup(), zone_check_glue(), zone_count_ns_rr(), zone_load_soa_rr(), zone_notify(), zone_nsec3chain(), zone_postload(), zone_refreshkeys(), zone_resigninc(), zone_rrset_check_dup(), and zone_sign().
void dns_rdataset_invalidate | ( | dns_rdataset_t * | rdataset | ) |
Invalidate 'rdataset'.
Requires:
Definition at line 89 of file rdataset.c.
References dns_rdataset::attributes, dns_rdataset::count, dns_rdataset::covers, DNS_RDATASET_VALID, ISC_LINK_INIT, ISC_UINT32_MAX, dns_rdataset::magic, dns_rdataset::methods, dns_rdataset::private1, dns_rdataset::private2, dns_rdataset::private3, dns_rdataset::private5, dns_rdataset::privateuint4, dns_rdataset::rdclass, REQUIRE, dns_rdataset::trust, dns_rdataset::ttl, and dns_rdataset::type.
Referenced by zone_count_ns_rr(), and zone_load_soa_rr().
void dns_rdataset_disassociate | ( | dns_rdataset_t * | rdataset | ) |
Disassociate 'rdataset' from its rdata, allowing it to be reused.
Notes:
Definition at line 115 of file rdataset.c.
References dns_rdataset::attributes, dns_rdataset::count, dns_rdataset::covers, dns_rdatasetmethods::disassociate, DNS_RDATASET_VALID, ISC_LINK_INIT, ISC_UINT32_MAX, dns_rdataset::methods, dns_rdataset::private1, dns_rdataset::private2, dns_rdataset::private3, dns_rdataset::private5, dns_rdataset::private6, dns_rdataset::privateuint4, dns_rdataset::rdclass, REQUIRE, dns_rdataset::trust, dns_rdataset::ttl, and dns_rdataset::type.
Referenced by active_node(), add_ds(), add_exposed_sigs(), add_rdata_to_list(), add_sigs(), addclosest(), addnoqname(), assignwork(), better_param(), build_event(), buildquery(), check_address_records(), check_hints(), check_no_nsec(), check_no_rrsig(), check_node(), check_nsec3param(), check_ttls(), checkbogus(), checkwildcard(), cleannode(), cleanup_zone(), clear_entry(), clearnode(), client_resfind(), configure_staticstub(), create_fetch(), dbfind_name(), del_keysigs(), del_sig(), del_sigs(), delete(), delete_nsec(), deletematchingnsec3(), destroy(), diff_apply(), dlv_validatezonekey(), dlvfetched(), dns64_ttl(), dns_acache_getentry(), dns_client_freeupdate(), dns_db_createsoatuple(), dns_db_getsoaserial(), dns_dnssec_findzonekeys2(), dns_dnssec_keylistfromrdataset(), dns_lookup_destroy(), dns_message_checksig(), dns_message_renderreset(), dns_message_setopt(), dns_ncache_getrdataset(), dns_ncache_getsigrdataset(), dns_nsec3_activex(), dns_nsec3_addnsec3(), dns_nsec3_addnsec3s(), dns_nsec3_addnsec3sx(), dns_nsec3_buildrdata(), dns_nsec3_delnsec3(), dns_nsec3_delnsec3sx(), dns_nsec3_maxiterations(), dns_nsec3param_deletechains(), dns_nsec_build(), dns_nsec_buildrdata(), dns_nsec_nseconly(), dns_private_chains(), dns_root_checkhints(), dns_rriterator_destroy(), dns_rriterator_first(), dns_rriterator_nextrrset(), dns_update_signaturesinc(), dns_view_find2(), dns_view_findzonecut2(), dns_view_simplefind(), dsfetched(), dsfetched2(), dump_rdatasets_raw(), dump_rdatasets_text(), dumpnode(), exit_check(), fctx_create(), fctx_destroy(), fetch_callback_validator(), fetch_done(), fetch_name(), findext(), findnsec3proofs(), fixrdataset(), fixup_nsec3param(), foreach_rr(), foreach_rrset(), free_adbfetch(), get_iterations(), get_key(), get_name_diff(), get_soa_ttls(), integrity_checks(), is_delegation(), isdelegation(), isoptout(), iszonesecure(), iterate_node(), keydone(), keyfetch_done(), levent_destroy(), loadds(), loadzonekeys(), lookup_find(), main(), mark_active_keys(), msgresetnames(), msgresetopt(), msgresetsigs(), ncache_adderesult(), ncache_summary(), need_nsec_chain(), noanswer_response(), notify_createmessage(), ns_client_endrequest(), ns_server_signing(), ns_server_zonestatus(), nsec3clean(), nsecify(), nta_detach(), prime_done(), proveunsecure(), putrdataset(), query_add_cname(), query_addadditional(), query_addadditional2(), query_addds(), query_addnoqnameproof(), query_addwildcardproof(), query_find(), query_findclosestnsec3(), query_putrdataset(), rdataset_to_sortedarray(), receive_secure_db(), record_found(), redirect(), redirect2(), remove_records(), remove_sigs(), resigned(), resume_addnsec3chain(), resume_dslookup(), resume_signingwithkey(), rpz_ck_dnssec(), rpz_clean(), rpz_find_p(), rpz_ready(), rpz_rewrite(), rpz_rewrite_ns_skip(), rr_exists(), rrset_cleanup(), save_nsec3param(), secure(), sendstream(), set_nsec3params(), set_resigntime(), setsoaserial(), setzone(), sign_a_node(), signed_with_key(), signname(), signset(), start_update(), temp_check(), tuple2msgname(), updatesecure(), updatesignwithkey(), val_rdataset_next(), validate(), validate_ncache(), validatezonekey(), verifynode(), verifynsec(), verifynsec3(), verifyset(), verifyzone(), view_find(), warn_rfc1918(), warnifallksk(), zone_check_dnskeys(), zone_check_dup(), zone_check_glue(), zone_count_ns_rr(), zone_load_soa_rr(), zone_notify(), zone_nsec3chain(), zone_postload(), zone_refreshkeys(), zone_resigninc(), and zone_rrset_check_dup().
isc_boolean_t dns_rdataset_isassociated | ( | dns_rdataset_t * | rdataset | ) |
Is 'rdataset' associated?
Requires:
Definition at line 143 of file rdataset.c.
References DNS_RDATASET_VALID, ISC_FALSE, ISC_TRUE, dns_rdataset::methods, and REQUIRE.
Referenced by add_ds(), add_sigs(), assignwork(), bind_rdataset(), build_event(), cache_name(), check_address_records(), check_hints(), check_no_nsec(), check_no_rrsig(), check_node(), check_nsec3param(), checkbogus(), checkns(), checkwildcard(), client_resfind(), clone_results(), cnamevalidated(), create_fetch(), dbfind_name(), del_sig(), del_sigs(), destroy(), diff_apply(), dlvfetched(), dlvvalidated(), dns64_aaaaok(), dns64_ttl(), dns_db_addrdataset(), dns_db_find(), dns_db_findext(), dns_db_findrdataset(), dns_db_findzonecut(), dns_db_subtractrdataset(), dns_dnssec_findzonekeys2(), dns_dnssec_keylistfromrdataset(), dns_lookup_destroy(), dns_message_checksig(), dns_message_puttemprdataset(), dns_ncache_current(), dns_ncache_getrdataset(), dns_ncache_getsigrdataset(), dns_nsec3_addnsec3(), dns_nsec3_addnsec3s(), dns_nsec3_addnsec3sx(), dns_nsec3_delnsec3(), dns_nsec3_delnsec3sx(), dns_nsec3_maxiterations(), dns_nsec3param_deletechains(), dns_nsec_build(), dns_private_chains(), dns_rdatalist_tordataset(), dns_rdatasetiter_current(), dns_rdataslab_tordataset(), dns_resolver_createfetch3(), dns_root_checkhints(), dns_rriterator_destroy(), dns_rriterator_first(), dns_rriterator_init(), dns_rriterator_nextrrset(), dns_view_find2(), dns_view_findzonecut2(), dns_view_simplefind(), dsfetched(), dsfetched2(), dsvalidated(), exit_check(), fctx_create(), fctx_destroy(), fctx_sendevents(), fetch_callback_validator(), fetch_done(), fetch_name(), finddlvsep(), findext(), findnsec3proofs(), fixrdataset(), fixup_nsec3param(), free_adbfetch(), get_iterations(), get_key(), getownercase(), getquestions(), in_rootns(), is_delegation(), isoptout(), iszonesecure(), keydone(), keyfetch_done(), keyvalidated(), loadzonekeys(), lookup_find(), main(), mark_active_keys(), mkey_dumpzone(), msgresetnames(), msgresetopt(), msgresetsigs(), ncache_adderesult(), ncache_summary(), need_nsec_chain(), noanswer_response(), ns_client_endrequest(), ns_server_signing(), nta_detach(), prime_done(), proveunsecure(), putrdataset(), query_add_cname(), query_addadditional(), query_addadditional2(), query_addds(), query_addnoqnameproof(), query_addnxrrsetnsec(), query_addrrset(), query_addwildcardproof(), query_dns64(), query_find(), query_findclosestnsec3(), query_putrdataset(), receive_secure_db(), record_found(), redirect(), redirect2(), refresh_time(), resolveaddr_done(), resolvesoa_done(), resume_addnsec3chain(), resume_dslookup(), resume_signingwithkey(), revocable(), rpz_ck_dnssec(), rpz_clean(), rpz_find_p(), rpz_ready(), rpz_rewrite(), rpz_rewrite_ns_skip(), rpz_rrset_find(), rpz_save_p(), save_nsec3param(), secure(), sendstream(), set_nsec3params(), setownercase(), sign_a_node(), signed_with_alg(), signed_with_key(), signset(), sync_keyzone(), updatesecure(), updatesignwithkey(), validate(), validate_ncache(), validatezonekey(), validator_start(), verifyemptynodes(), verifynode(), verifynsec(), verifynsec3(), verifyzone(), view_find(), zone_check_glue(), zone_count_ns_rr(), zone_load_soa_rr(), and zone_refreshkeys().
void dns_rdataset_makequestion | ( | dns_rdataset_t * | rdataset, | |
dns_rdataclass_t | rdclass, | |||
dns_rdatatype_t | type | |||
) |
Make 'rdataset' a valid, associated, question rdataset, with a question class of 'rdclass' and type 'type'.
Notes:
Definition at line 217 of file rdataset.c.
References dns_rdataset::attributes, DNS_RDATASET_VALID, DNS_RDATASETATTR_QUESTION, dns_rdataset::methods, dns_rdataset::rdclass, REQUIRE, and dns_rdataset::type.
Referenced by add_question(), buildquery(), create_query(), notify_createmessage(), request_soa(), resquery_send(), send_update(), sendstream(), setzone(), start_update(), and xfrin_send_request().
void dns_rdataset_clone | ( | dns_rdataset_t * | source, | |
dns_rdataset_t * | target | |||
) |
Make 'target' refer to the same rdataset as 'source'.
Requires:
Definition at line 249 of file rdataset.c.
References dns_rdatasetmethods::clone, DNS_RDATASET_VALID, dns_rdataset::methods, and REQUIRE.
Referenced by better_param(), build_event(), clone_results(), dlv_validatezonekey(), dlvfetched(), dlvvalidated(), dns_acache_getentry(), dns_acache_setentry(), dns_dnssec_keylistfromrdataset(), dns_ncache_getrdataset(), dns_ncache_getsigrdataset(), dns_view_find2(), dns_view_findzonecut2(), fctx_create(), finddlvsep(), isc__rdatalist_getclosest(), isc__rdatalist_getnoqname(), isdelegation(), mark_active_keys(), rdataset_to_sortedarray(), redirect(), redirect2(), resume_dslookup(), rrset_cleanup(), validatezonekey(), zone_refreshkeys(), and zone_rrset_check_dup().
unsigned int dns_rdataset_count | ( | dns_rdataset_t * | rdataset | ) |
Return the number of records in 'rdataset'.
Requires:
Definition at line 236 of file rdataset.c.
References dns_rdatasetmethods::count, DNS_RDATASET_VALID, dns_rdataset::methods, and REQUIRE.
Referenced by copy_rdataset(), dns64_aaaaok(), dns_dns64_aaaaok(), dns_rdataslab_fromrdataset(), dump_rdataset_raw(), iterate_node(), lookup_done(), query_dns64(), query_filter64(), rdataset_to_sortedarray(), and signset().
isc_result_t dns_rdataset_first | ( | dns_rdataset_t * | rdataset | ) |
Move the rdata cursor to the first rdata in the rdataset (if any).
Requires:
Definition at line 264 of file rdataset.c.
References DNS_RDATASET_VALID, dns_rdatasetmethods::first, dns_rdataset::methods, and REQUIRE.
Referenced by better_param(), chase_cnamechain(), check_address_records(), check_ds(), check_for_more_data(), check_nsec3param(), check_tsig_error(), checkandaddsoa(), checkkey(), checknamessection(), checkns(), client_resfind(), cname_target(), copy_name(), copy_ptr_targets(), copy_rdataset(), del_keysigs(), del_sig(), del_sigs(), delete(), delete_keydata(), delete_nsec(), deletematchingnsec3(), detailsection(), dlv_algorithm_supported(), dlv_validatezonekey(), dname_target(), dns64_ttl(), dns_db_createsoatuple(), dns_db_getsoaserial(), dns_dns64_aaaaok(), dns_dnssec_findzonekeys2(), dns_dnssec_keylistfromrdataset(), dns_dnssec_signs(), dns_dnssec_verifymessage(), dns_message_checksig(), dns_message_getquerytsig(), dns_message_pseudosectiontotext(), dns_message_setopt(), dns_message_signer(), dns_ncache_getrdataset(), dns_ncache_getsigrdataset(), dns_ncache_towire(), dns_nsec3_activex(), dns_nsec3_addnsec3s(), dns_nsec3_addnsec3sx(), dns_nsec3_delnsec3sx(), dns_nsec3_maxiterations(), dns_nsec3_noexistnodata(), dns_nsec3param_deletechains(), dns_nsec_noexistnodata(), dns_nsec_nseconly(), dns_private_chains(), dns_rdataset_additionaldata(), dns_rdataslab_fromrdataset(), dns_root_checkhints(), dns_rpz_decode_cname(), dns_rriterator_first(), dns_rriterator_nextrrset(), dns_tkey_processdhresponse(), dns_tkey_processquery(), dns_tsig_sign(), dns_tsig_verify(), dns_update_signaturesinc(), dns_zone_notifyreceive(), dump_rdataset_raw(), fctx_getaddresses(), fill_array(), find_nsec3(), find_tkey(), findnoqname(), fixup_nsec3param(), followup_lookup(), foreach_node_rr_action(), foreach_rr(), get_current_rr(), get_dst_key(), get_edns_expire(), get_iterations(), get_key(), get_name_diff(), get_soa_ttls(), goodsig(), ignore(), import_rdataset(), in_rootns(), innsec3params(), inrrset(), integrity_checks(), is_answeraddress_allowed(), isdelegation(), isoptout(), isselfsigned(), iszonesecure(), keydone(), keyfetch_done(), keyfromds(), load_secroots(), loadds(), lookup_find(), main(), mark_active_keys(), match_nsec3(), matchkey(), minimal_update(), mkey_dumpzone(), ncache_summary(), need_nsec_chain(), notify_createmessage(), ns_server_signing(), ns_xfr_start(), nsec3clean(), printsection(), process_dhtkey(), process_opt(), process_soa(), query_addnxrrsetnsec(), query_addsoa(), query_addwildcardproof(), query_dns64(), query_filter64(), query_find(), query_findclosestnsec3(), question_totext(), rdataset_to_sortedarray(), rdataset_totext(), record_found(), recvsoa(), redirect(), redirect2(), refresh_callback(), refresh_time(), resolveaddr_done(), resume_addnsec3chain(), resume_signingwithkey(), revocable(), rpz_ck_dnssec(), rpz_rewrite(), rpz_rewrite_ip_rrset(), rr_exists(), rrset_cleanup(), rrsig_fromchildzone(), save_nsec3param(), save_nsrrset(), set_nsec3params(), set_target(), setresign(), setsoaserial(), short_answer(), signed_with_alg(), signed_with_key(), signset(), temp_check(), towiresorted(), tsig_verify_tcp(), updatesignwithkey(), val_rdataset_first(), validate(), validate_authority(), validate_ncache(), validatezonekey(), verifynsec(), verifynsec3s(), verifyset(), verifyzone(), view_find(), warn_rfc1918(), warnifallksk(), xfrin_recv_done(), zone_check_dnskeys(), zone_count_ns_rr(), zone_load_soa_rr(), zone_notify(), zone_refreshkeys(), and zone_rrset_check_dup().
isc_result_t dns_rdataset_next | ( | dns_rdataset_t * | rdataset | ) |
Move the rdata cursor to the next rdata in the rdataset (if any).
Requires:
Definition at line 277 of file rdataset.c.
References DNS_RDATASET_VALID, dns_rdataset::methods, dns_rdatasetmethods::next, and REQUIRE.
Referenced by better_param(), check_address_records(), check_ds(), check_for_more_data(), check_nsec3param(), checkkey(), checknamessection(), checkns(), copy_name(), copy_ptr_targets(), copy_rdataset(), del_keysigs(), del_sig(), del_sigs(), delete(), delete_keydata(), delete_nsec(), deletematchingnsec3(), detailsection(), dlv_algorithm_supported(), dlv_validatezonekey(), dns_db_getsoaserial(), dns_dns64_aaaaok(), dns_dnssec_findzonekeys2(), dns_dnssec_keylistfromrdataset(), dns_dnssec_signs(), dns_message_checksig(), dns_ncache_getrdataset(), dns_ncache_getsigrdataset(), dns_ncache_towire(), dns_nsec3_activex(), dns_nsec3_addnsec3s(), dns_nsec3_addnsec3sx(), dns_nsec3_delnsec3sx(), dns_nsec3_maxiterations(), dns_nsec3param_deletechains(), dns_nsec_nseconly(), dns_private_chains(), dns_rdataset_additionaldata(), dns_rdataslab_fromrdataset(), dns_root_checkhints(), dns_rriterator_next(), dump_rdataset_raw(), fctx_getaddresses(), fill_array(), find_nsec3(), findnoqname(), fixup_nsec3param(), followup_lookup(), foreach_node_rr_action(), foreach_rr(), get_current_rr(), get_dst_key(), get_iterations(), get_key(), get_name_diff(), goodsig(), ignore(), import_rdataset(), in_rootns(), innsec3params(), inrrset(), integrity_checks(), is_answeraddress_allowed(), isdelegation(), isselfsigned(), iszonesecure(), keydone(), keyfetch_done(), keyfromds(), load_secroots(), loadds(), main(), mark_active_keys(), match_nsec3(), matchkey(), minimal_update(), mkey_dumpzone(), ncache_summary(), need_nsec_chain(), notify_createmessage(), ns_server_signing(), ns_xfr_start(), nsec3clean(), printsection(), process_dhtkey(), query_dns64(), query_filter64(), query_find(), rdataset_to_sortedarray(), rdataset_totext(), record_found(), redirect(), redirect2(), resolveaddr_done(), resume_addnsec3chain(), resume_signingwithkey(), revocable(), rpz_ck_dnssec(), rpz_rewrite(), rpz_rewrite_ip_rrset(), rr_exists(), rrset_cleanup(), rrsig_fromchildzone(), save_nsec3param(), save_nsrrset(), setresign(), short_answer(), signed_with_alg(), signed_with_key(), signset(), temp_check(), towiresorted(), updatesignwithkey(), val_rdataset_next(), validate(), validate_ncache(), validatezonekey(), verifynsec(), verifynsec3s(), verifyset(), verifyzone(), warnifallksk(), xfrin_recv_done(), zone_check_dnskeys(), zone_count_ns_rr(), zone_load_soa_rr(), zone_notify(), zone_refreshkeys(), and zone_rrset_check_dup().
void dns_rdataset_current | ( | dns_rdataset_t * | rdataset, | |
dns_rdata_t * | rdata | |||
) |
Make 'rdata' refer to the current rdata.
Notes:
Definition at line 290 of file rdataset.c.
References dns_rdatasetmethods::current, DNS_RDATASET_VALID, dns_rdataset::methods, and REQUIRE.
Referenced by better_param(), chase_cnamechain(), check_address_records(), check_ds(), check_for_more_data(), check_nsec3param(), check_tsig_error(), checkandaddsoa(), checkkey(), checknamessection(), checkns(), client_resfind(), cname_target(), copy_name(), copy_ptr_targets(), copy_rdataset(), del_keysigs(), del_sig(), del_sigs(), delete(), delete_keydata(), delete_nsec(), deletematchingnsec3(), detailsection(), dlv_algorithm_supported(), dlv_validatezonekey(), dname_target(), dns64_ttl(), dns_db_createsoatuple(), dns_db_getsoaserial(), dns_dns64_aaaaok(), dns_dnssec_findzonekeys2(), dns_dnssec_keylistfromrdataset(), dns_dnssec_signs(), dns_dnssec_verifymessage(), dns_message_checksig(), dns_message_getquerytsig(), dns_message_pseudosectiontotext(), dns_message_setopt(), dns_message_signer(), dns_ncache_current(), dns_ncache_getrdataset(), dns_ncache_getsigrdataset(), dns_ncache_towire(), dns_nsec3_activex(), dns_nsec3_addnsec3s(), dns_nsec3_addnsec3sx(), dns_nsec3_delnsec3sx(), dns_nsec3_maxiterations(), dns_nsec3_noexistnodata(), dns_nsec3param_deletechains(), dns_nsec_noexistnodata(), dns_nsec_nseconly(), dns_private_chains(), dns_rdataset_additionaldata(), dns_rdataslab_fromrdataset(), dns_root_checkhints(), dns_rpz_decode_cname(), dns_rriterator_current(), dns_tkey_processdhresponse(), dns_tkey_processquery(), dns_tsig_sign(), dns_tsig_verify(), dns_update_signaturesinc(), dns_zone_notifyreceive(), dump_rdataset_raw(), fctx_getaddresses(), fill_array(), find_nsec3(), find_tkey(), findnoqname(), fixup_nsec3param(), followup_lookup(), foreach_node_rr_action(), foreach_rr(), get_current_rr(), get_dst_key(), get_edns_expire(), get_iterations(), get_key(), get_name_diff(), get_soa_ttls(), goodsig(), ignore(), import_rdataset(), in_rootns(), innsec3params(), inrrset(), integrity_checks(), is_answeraddress_allowed(), isdelegation(), isoptout(), isselfsigned(), iszonesecure(), keydone(), keyfetch_done(), keyfromds(), load_secroots(), loadds(), lookup_find(), main(), mark_active_keys(), match_nsec3(), matchkey(), minimal_update(), mkey_dumpzone(), ncache_summary(), need_nsec_chain(), notify_createmessage(), ns_server_signing(), ns_xfr_start(), nsec3clean(), printsection(), process_dhtkey(), process_opt(), process_soa(), query_addnxrrsetnsec(), query_addsoa(), query_addwildcardproof(), query_dns64(), query_filter64(), query_find(), query_findclosestnsec3(), rdataset_to_sortedarray(), rdataset_totext(), record_found(), recvsoa(), refresh_callback(), refresh_time(), resolveaddr_done(), resume_addnsec3chain(), resume_signingwithkey(), revocable(), rpz_rewrite(), rpz_rewrite_ip_rrset(), rr_exists(), rrset_cleanup(), rrsig_fromchildzone(), save_nsec3param(), save_nsrrset(), set_nsec3params(), set_target(), setresign(), setsoaserial(), short_answer(), signed_with_alg(), signed_with_key(), signset(), temp_check(), towiresorted(), tsig_verify_tcp(), updatesignwithkey(), validate(), validate_authority(), validate_ncache(), validatezonekey(), verifynsec(), verifynsec3s(), verifyset(), verifyzone(), view_find(), warn_rfc1918(), warnifallksk(), xfrin_recv_done(), zone_check_dnskeys(), zone_count_ns_rr(), zone_load_soa_rr(), zone_notify(), zone_refreshkeys(), and zone_rrset_check_dup().
isc_result_t dns_rdataset_totext | ( | dns_rdataset_t * | rdataset, | |
dns_name_t * | owner_name, | |||
isc_boolean_t | omit_final_dot, | |||
isc_boolean_t | question, | |||
isc_buffer_t * | target | |||
) |
Convert 'rdataset' to text format, storing the result in 'target'.
Notes:
Definition at line 705 of file masterdump.c.
References dns_master_style_debug, dns_name_countlabels(), ISC_R_SUCCESS, ISC_R_UNEXPECTED, question_totext(), rdataset_totext(), totext_ctx_init(), and UNEXPECTED_ERROR.
Referenced by add_callback(), dns_diff_print(), log_rr(), printrdata(), and printsection().
isc_result_t dns_rdataset_towire | ( | dns_rdataset_t * | rdataset, | |
dns_name_t * | owner_name, | |||
dns_compress_t * | cctx, | |||
isc_buffer_t * | target, | |||
unsigned int | options, | |||
unsigned int * | countp | |||
) |
Convert 'rdataset' to wire format, compressing names as specified in 'cctx', and storing the result in 'target'.
Notes:
Definition at line 603 of file rdataset.c.
References ISC_FALSE, and towiresorted().
Referenced by dns_message_renderend().
isc_result_t dns_rdataset_towiresorted | ( | dns_rdataset_t * | rdataset, | |
const dns_name_t * | owner_name, | |||
dns_compress_t * | cctx, | |||
isc_buffer_t * | target, | |||
dns_rdatasetorderfunc_t | order, | |||
const void * | order_arg, | |||
unsigned int | options, | |||
unsigned int * | countp | |||
) |
Like dns_rdataset_towire(), but sorting the rdatasets according to the integer value returned by 'order' when called with the rdataset and 'order_arg' as arguments.
Requires:
Definition at line 571 of file rdataset.c.
References ISC_FALSE, and towiresorted().
Referenced by dns_message_rendersection().
isc_result_t dns_rdataset_towirepartial | ( | dns_rdataset_t * | rdataset, | |
const dns_name_t * | owner_name, | |||
dns_compress_t * | cctx, | |||
isc_buffer_t * | target, | |||
dns_rdatasetorderfunc_t | order, | |||
const void * | order_arg, | |||
unsigned int | options, | |||
unsigned int * | countp, | |||
void ** | state | |||
) |
Like dns_rdataset_towiresorted() except that a partial rdataset may be written.
Requires:
Definition at line 586 of file rdataset.c.
References ISC_TRUE, REQUIRE, and towiresorted().
Referenced by dns_message_rendersection().
isc_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:
Definition at line 615 of file rdataset.c.
References dns_rdataset::attributes, dns_rdata_additionaldata(), DNS_RDATA_INIT, dns_rdata_reset(), dns_rdataset_current(), dns_rdataset_first(), dns_rdataset_next(), DNS_RDATASET_VALID, DNS_RDATASETATTR_QUESTION, ISC_R_NOMORE, ISC_R_SUCCESS, towire_sort::rdata, and REQUIRE.
Referenced by answer_response(), chase_additional(), noanswer_response(), query_addadditional(), and query_addrdataset().
isc_result_t dns_rdataset_getnoqname | ( | dns_rdataset_t * | rdataset, | |
dns_name_t * | name, | |||
dns_rdataset_t * | neg, | |||
dns_rdataset_t * | negsig | |||
) |
Return the noqname proof for this record.
Requires:
Definition at line 658 of file rdataset.c.
References DNS_RDATASET_VALID, dns_rdatasetmethods::getnoqname, ISC_R_NOTIMPLEMENTED, dns_rdataset::methods, and REQUIRE.
Referenced by addnoqname(), and query_addnoqnameproof().
isc_result_t dns_rdataset_addnoqname | ( | dns_rdataset_t * | rdataset, | |
dns_name_t * | name | |||
) |
Associate a noqname proof with this record. Sets DNS_RDATASETATTR_NOQNAME if successful. Adjusts the 'rdataset->ttl' to minimum of the 'rdataset->ttl' and the 'nsec'/'nsec3' and 'rrsig(nsec)'/'rrsig(nsec3)' ttl.
Requires:
Definition at line 648 of file rdataset.c.
References dns_rdatasetmethods::addnoqname, DNS_RDATASET_VALID, ISC_R_NOTIMPLEMENTED, dns_rdataset::methods, and REQUIRE.
Referenced by cache_name().
isc_result_t dns_rdataset_getclosest | ( | dns_rdataset_t * | rdataset, | |
dns_name_t * | name, | |||
dns_rdataset_t * | nsec, | |||
dns_rdataset_t * | nsecsig | |||
) |
Return the closest encloser for this record.
Requires:
Definition at line 680 of file rdataset.c.
References DNS_RDATASET_VALID, dns_rdatasetmethods::getclosest, ISC_R_NOTIMPLEMENTED, dns_rdataset::methods, and REQUIRE.
Referenced by addclosest(), and query_addnoqnameproof().
isc_result_t dns_rdataset_addclosest | ( | dns_rdataset_t * | rdataset, | |
dns_name_t * | name | |||
) |
Associate a closest encloset proof with this record. Sets DNS_RDATASETATTR_CLOSEST if successful. Adjusts the 'rdataset->ttl' to minimum of the 'rdataset->ttl' and the 'nsec' and 'rrsig(nsec)' ttl.
Requires:
Definition at line 670 of file rdataset.c.
References dns_rdatasetmethods::addclosest, DNS_RDATASET_VALID, ISC_R_NOTIMPLEMENTED, dns_rdataset::methods, and REQUIRE.
isc_result_t dns_rdataset_getadditional | ( | dns_rdataset_t * | rdataset, | |
dns_rdatasetadditional_t | type, | |||
dns_rdatatype_t | qtype, | |||
dns_acache_t * | acache, | |||
dns_zone_t ** | zonep, | |||
dns_db_t ** | dbp, | |||
dns_dbversion_t ** | versionp, | |||
dns_dbnode_t ** | nodep, | |||
dns_name_t * | fname, | |||
dns_message_t * | msg, | |||
isc_stdtime_t | now | |||
) |
Get cached additional information from the DB node for a particular 'rdataset.' 'type' is one of dns_rdatasetadditional_fromauth, dns_rdatasetadditional_fromcache, and dns_rdatasetadditional_fromglue, which specifies the origin of the information. 'qtype' is intended to be used for specifying a particular rdata type in the cached information.
Requires:
Definition at line 695 of file rdataset.c.
References DNS_RDATASET_VALID, dns_rdatasetmethods::getadditional, ISC_R_FAILURE, dns_rdataset::methods, and REQUIRE.
Referenced by query_addadditional2().
isc_result_t dns_rdataset_setadditional | ( | dns_rdataset_t * | rdataset, | |
dns_rdatasetadditional_t | type, | |||
dns_rdatatype_t | qtype, | |||
dns_acache_t * | acache, | |||
dns_zone_t * | zone, | |||
dns_db_t * | db, | |||
dns_dbversion_t * | version, | |||
dns_dbnode_t * | node, | |||
dns_name_t * | fname | |||
) |
Set cached additional information to the DB node for a particular 'rdataset.' See dns_rdataset_getadditional for the semantics of 'type' and 'qtype'.
Requires:
Definition at line 728 of file rdataset.c.
References DNS_RDATASET_VALID, ISC_R_FAILURE, dns_rdataset::methods, REQUIRE, and dns_rdatasetmethods::setadditional.
Referenced by query_addadditional2().
isc_result_t dns_rdataset_putadditional | ( | dns_acache_t * | acache, | |
dns_rdataset_t * | rdataset, | |||
dns_rdatasetadditional_t | type, | |||
dns_rdatatype_t | qtype | |||
) |
Discard cached additional information stored in the DB node for a particular 'rdataset.' See dns_rdataset_getadditional for the semantics of 'type' and 'qtype'.
Requires:
Definition at line 752 of file rdataset.c.
References DNS_RDATASET_VALID, ISC_R_FAILURE, dns_rdataset::methods, dns_rdatasetmethods::putadditional, and REQUIRE.
Referenced by query_discardcache().
void dns_rdataset_settrust | ( | dns_rdataset_t * | rdataset, | |
dns_trust_t | trust | |||
) |
Set the trust of the 'rdataset' to trust in any in the backing database. The local trust level of 'rdataset' is also set.
Definition at line 769 of file rdataset.c.
References DNS_RDATASET_VALID, dns_rdataset::methods, REQUIRE, dns_rdatasetmethods::settrust, and dns_rdataset::trust.
Referenced by markanswer(), and marksecure().
void dns_rdataset_expire | ( | dns_rdataset_t * | rdataset | ) |
Mark the rdataset to be expired in the backing database.
Definition at line 780 of file rdataset.c.
References DNS_RDATASET_VALID, dns_rdatasetmethods::expire, dns_rdataset::methods, and REQUIRE.
Referenced by cnamevalidated(), dlvvalidated(), dsvalidated(), and keyvalidated().
void dns_rdataset_clearprefetch | ( | dns_rdataset_t * | rdataset | ) |
Clear the PREFETCH attribute for the given rdataset in the underlying database.
In the cache database, this signals that the rdataset is not eligible to be prefetched when the TTL is close to expiring. It has no function in other databases.
Definition at line 789 of file rdataset.c.
References dns_rdatasetmethods::clearprefetch, DNS_RDATASET_VALID, dns_rdataset::methods, and REQUIRE.
Referenced by query_prefetch().
void dns_rdataset_setownercase | ( | dns_rdataset_t * | rdataset, | |
const dns_name_t * | name | |||
) |
Store the casing of 'name', the owner name of 'rdataset', into a bitfield so that the name can be capitalized the same when when the rdataset is used later. This sets the CASESET attribute.
Definition at line 798 of file rdataset.c.
References DNS_RDATASET_VALID, dns_rdataset::methods, REQUIRE, and dns_rdatasetmethods::setownercase.
Referenced by checkandaddsoa(), getsection(), query_add_cname(), query_dns64(), query_filter64(), and setownercase().
void dns_rdataset_getownercase | ( | const dns_rdataset_t * | rdataset, | |
dns_name_t * | name | |||
) |
If the CASESET attribute is set, retrieve the case bitfield that was previously stored by dns_rdataset_getownername(), and capitalize 'name' according to it. If CASESET is not set, do nothing.
Definition at line 807 of file rdataset.c.
References DNS_RDATASET_VALID, dns_rdatasetmethods::getownercase, dns_rdataset::methods, and REQUIRE.
Referenced by addrdataset(), checkandaddsoa(), dns_db_createsoatuple(), dns_rriterator_first(), dns_rriterator_nextrrset(), foreach_rr(), getownercase(), rdataset_totext(), and towiresorted().
void dns_rdataset_trimttl | ( | dns_rdataset_t * | rdataset, | |
dns_rdataset_t * | sigrdataset, | |||
dns_rdata_rrsig_t * | rrsig, | |||
isc_stdtime_t | now, | |||
isc_boolean_t | acceptexpired | |||
) |
Trim the ttl of 'rdataset' and 'sigrdataset' so that they will expire at or before 'rrsig->expiretime'. If 'acceptexpired' is true and the signature has expired or will expire in the next 120 seconds, limit the ttl to be no more than 120 seconds.
The ttl is further limited by the original ttl as stored in 'rrsig' and the original ttl values of 'rdataset' and 'sigrdataset'.
Requires:
Definition at line 816 of file rdataset.c.
References DNS_RDATASET_VALID, ISC_MIN, isc_serial_ge(), isc_serial_le(), REQUIRE, dns_rdataset::ttl, and ttl.
Referenced by ATF_TC_BODY(), mark_secure(), and validate().
const char* dns_trust_totext | ( | dns_trust_t | trust | ) |
Display trust in textual form.
Definition at line 53 of file rdataset.c.
References trustnames.
Referenced by cnamevalidated(), dlvvalidated(), dsfetched(), dsvalidated(), dump_rdatasets_text(), fetch_callback_validator(), get_key(), keyvalidated(), and view_find().