#include <config.h>
#include <stdlib.h>
#include <isc/buffer.h>
#include <isc/mem.h>
#include <isc/random.h>
#include <isc/serial.h>
#include <isc/util.h>
#include <dns/compress.h>
#include <dns/fixedname.h>
#include <dns/name.h>
#include <dns/ncache.h>
#include <dns/rdata.h>
#include <dns/rdataset.h>
Go to the source code of this file.
Data Structures | |
struct | towire_sort |
Defines | |
#define | MAX_SHUFFLE 32 |
#define | WANT_FIXED(r) (((r)->attributes & DNS_RDATASETATTR_FIXEDORDER) != 0) |
#define | WANT_RANDOM(r) (((r)->attributes & DNS_RDATASETATTR_RANDOMIZE) != 0) |
Functions | |
const char * | dns_trust_totext (dns_trust_t trust) |
Display trust in textual form. | |
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? | |
static void | question_disassociate (dns_rdataset_t *rdataset) |
static isc_result_t | question_cursor (dns_rdataset_t *rdataset) |
static void | question_current (dns_rdataset_t *rdataset, dns_rdata_t *rdata) |
static void | question_clone (dns_rdataset_t *source, dns_rdataset_t *target) |
static unsigned int | question_count (dns_rdataset_t *rdataset) |
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'. | |
unsigned int | dns_rdataset_count (dns_rdataset_t *rdataset) |
Return the number of records in 'rdataset'. | |
void | dns_rdataset_clone (dns_rdataset_t *source, dns_rdataset_t *target) |
Make 'target' refer to the same rdataset as 'source'. | |
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. | |
static int | towire_compare (const void *av, const void *bv) |
static isc_result_t | 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, isc_boolean_t partial, unsigned int options, unsigned int *countp, void **state) |
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_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_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_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_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_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_getclosest (dns_rdataset_t *rdataset, dns_name_t *name, dns_rdataset_t *neg, dns_rdataset_t *negsig) |
Return the closest encloser for this record. | |
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. | |
Variables | |
static const char * | trustnames [] |
static dns_rdatasetmethods_t | question_methods |
Definition in file rdataset.c.
#define MAX_SHUFFLE 32 |
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().
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().
static void question_disassociate | ( | dns_rdataset_t * | rdataset | ) | [static] |
static isc_result_t question_cursor | ( | dns_rdataset_t * | rdataset | ) | [static] |
static void question_current | ( | dns_rdataset_t * | rdataset, | |
dns_rdata_t * | rdata | |||
) | [static] |
static void question_clone | ( | dns_rdataset_t * | source, | |
dns_rdataset_t * | target | |||
) | [static] |
Definition at line 180 of file rdataset.c.
static unsigned int question_count | ( | dns_rdataset_t * | rdataset | ) | [static] |
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().
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().
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().
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().
static int towire_compare | ( | const void * | av, | |
const void * | bv | |||
) | [static] |
Definition at line 312 of file rdataset.c.
References towire_sort::key.
Referenced by towiresorted().
static isc_result_t 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, | |||
isc_boolean_t | partial, | |||
unsigned int | options, | |||
unsigned int * | countp, | |||
void ** | state | |||
) | [static] |
Definition at line 319 of file rdataset.c.
References dns_rdataset::attributes, cleanup(), dns_rdataset::count, dns_rdatasetmethods::count, DNS_COMPRESS_GLOBAL14, dns_compress_rollback(), dns_compress_setmethods(), dns_fixedname_init, dns_fixedname_name, dns_name_copy(), dns_name_towire(), dns_ncache_towire(), DNS_NCACHETOWIRE_OMITDNSSEC, dns_rdata_init(), DNS_RDATA_INIT, dns_rdata_reset(), dns_rdata_towire(), dns_rdataset_current(), dns_rdataset_first(), dns_rdataset_getownercase(), dns_rdataset_next(), DNS_RDATASET_VALID, DNS_RDATASETATTR_NEGATIVE, DNS_RDATASETATTR_QUESTION, DNS_RDATASETTOWIRE_OMITDNSSEC, fixed, INSIST, isc_buffer_add, isc_buffer_availableregion, isc_buffer_putuint16, isc_buffer_putuint32, ISC_FALSE, isc_mem_get, isc_mem_put, ISC_R_NOMORE, ISC_R_NOSPACE, ISC_R_SUCCESS, isc_random_get(), ISC_TRUE, ISC_UINT32_MAX, towire_sort::key, isc_region::length, MAX_SHUFFLE, dns_compress::mctx, dns_rdataset::methods, name, r, towire_sort::rdata, dns_rdataset::rdclass, REQUIRE, towire_compare(), dns_rdataset::ttl, dns_rdataset::type, UNUSED, isc_buffer::used, WANT_FIXED, and WANT_RANDOM.
Referenced by dns_rdataset_towire(), dns_rdataset_towirepartial(), and dns_rdataset_towiresorted().
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_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_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_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_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_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_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_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* trustnames[] [static] |
Initial value:
{ "none", "pending-additional", "pending-answer", "additional", "glue", "answer", "authauthority", "authanswer", "secure", "local" }
Definition at line 39 of file rdataset.c.
Referenced by dns_trust_totext().
dns_rdatasetmethods_t question_methods [static] |
Initial value:
{ question_disassociate, question_cursor, question_cursor, question_current, question_clone, question_count, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL }
Definition at line 195 of file rdataset.c.