Delegation Point. More...
#include <iter_delegpt.h>
Data Fields | |
uint8_t * | name |
the domain name of the delegation point. | |
size_t | namelen |
length of the delegation point name | |
int | namelabs |
number of labels in delegation point | |
struct delegpt_ns * | nslist |
the nameservers, names from the NS RRset rdata. | |
struct delegpt_addr * | target_list |
the target addresses for delegation | |
struct delegpt_addr * | usable_list |
the list of usable targets; subset of target_list the items in this list are not part of the result list. | |
struct delegpt_addr * | result_list |
the list of returned targets; subset of target_list | |
int | bogus |
if true, the NS RRset was bogus. | |
uint8_t | has_parent_side_NS |
if true, the parent-side NS record has been applied: its names have been added and their addresses can follow later. | |
uint8_t | fallback_to_parent_side_NS |
if true, the delegation point has reached last resort processing and the parent side information has been possibly added to the delegation point. | |
uint8_t | dp_type_mlc |
for assertions on type of delegpt | |
uint8_t | ssl_upstream |
use SSL for upstream query | |
uint8_t | tcp_upstream |
use TCP for upstream query | |
uint8_t | auth_dp |
delegpt from authoritative zone that is locally hosted | |
int | no_cache |
Delegation Point.
For a domain name, the NS rrset, and the A and AAAA records for those.
struct delegpt_addr* delegpt::usable_list |
the list of usable targets; subset of target_list the items in this list are not part of the result list.
Referenced by delegpt_add_addr(), delegpt_add_addr_mlc(), delegpt_add_unused_targets(), delegpt_count_addr(), delegpt_usable_list_remove_addr(), iter_dp_is_useless(), iter_merge_retry_counts(), and processLastResort().
int delegpt::bogus |
if true, the NS RRset was bogus.
All info is bad.
Referenced by delegpt_copy(), delegpt_log(), delegpt_rrset_add_ns(), errinf_reply(), iter_fill_rtt(), and print_dp_main().
uint8_t delegpt::has_parent_side_NS |
if true, the parent-side NS record has been applied: its names have been added and their addresses can follow later.
Also true if the delegationpoint was created from a delegation message and thus contains the parent-side-info already.
Referenced by can_have_last_resort(), compile_time_root_prime(), delegpt_copy(), delegpt_from_message(), delegpt_log(), iter_lookup_parent_NS_from_cache(), parse_delegpt(), processFinished(), processInitRequest2(), processLastResort(), processQueryResponse(), processQueryTargets(), read_forwards(), read_root_hints(), and read_stubs().
uint8_t delegpt::fallback_to_parent_side_NS |
if true, the delegation point has reached last resort processing and the parent side information has been possibly added to the delegation point.
For now this signals that further target lookups will ignore the configured target-fetch-policy and only resolve on demand to try and avoid triggering limits at this stage (.i.e, it is very likely that the A/AAAA queries for the newly added name servers will not yield new IP addresses and trigger NXNS countermeasures.
Referenced by processLastResort(), and processQueryTargets().