delegpt Struct Reference

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_nsnslist
 the nameservers, names from the NS RRset rdata.
 
struct delegpt_addrtarget_list
 the target addresses for delegation
 
struct delegpt_addrusable_list
 the list of usable targets; subset of target_list the items in this list are not part of the result list.
 
struct delegpt_addrresult_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
 

Detailed Description

Delegation Point.

For a domain name, the NS rrset, and the A and AAAA records for those.

Field Documentation

◆ usable_list

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().

◆ bogus

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().

◆ has_parent_side_NS

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().

◆ fallback_to_parent_side_NS

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().


The documentation for this struct was generated from the following file: