iter_env Struct Reference

Global state for the iterator. More...

#include <iterator.h>

Data Fields

int supports_ipv6
 A flag to indicate whether or not we have an IPv6 route.
 
int supports_ipv4
 A flag to indicate whether or not we have an IPv4 route.
 
int use_nat64
 A flag to locally apply NAT64 to make IPv4 addrs into IPv6.
 
struct sockaddr_storage nat64_prefix_addr
 NAT64 prefix address, cf. More...
 
socklen_t nat64_prefix_addrlen
 sizeof(sockaddr_in6)
 
int nat64_prefix_net
 CIDR mask length of NAT64 prefix.
 
struct iter_donotqdonotq
 A set of inetaddrs that should never be queried.
 
struct iter_privpriv
 private address space and private domains
 
struct rbtree_typecaps_white
 whitelist for capsforid names
 
int max_dependency_depth
 The maximum dependency depth that this resolver will pursue.
 
int * target_fetch_policy
 The target fetch policy for each dependency level. More...
 
lock_basic_type queries_ratelimit_lock
 lock on ratelimit counter
 
size_t num_queries_ratelimited
 number of queries that have been ratelimited
 
int outbound_msg_retry
 number of retries on outgoing queries
 
int max_sent_count
 number of queries_sent
 
int max_query_restarts
 max number of query restarts to limit length of CNAME chain
 

Detailed Description

Global state for the iterator.

Field Documentation

◆ nat64_prefix_addr

struct sockaddr_storage iter_env::nat64_prefix_addr

NAT64 prefix address, cf.

dns64_env->prefix_addr

Referenced by iter_apply_cfg().

◆ target_fetch_policy

int* iter_env::target_fetch_policy

The target fetch policy for each dependency level.

This is described as a simple number (per dependency level): negative numbers (usually just -1) mean fetch-all, 0 means only fetch on demand, and positive numbers mean to fetch at most that many targets. array of max_dependency_depth+1 size.

Referenced by iter_apply_cfg(), and iter_deinit().


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