void dns_domain_list_append(struct dns_domain **entry, char **domains, struct gc_arena *gc)
Appends DNS domain parameters to a linked list.
void setenv_dns_options(const struct dns_options *o, struct env_set *es)
Puts the DNS options into an environment set.
enum dns_server_transport transport
void dns_options_preprocess_pull(struct dns_options *o)
Saves and resets the server options, so that pulled ones don't mix in.
bool dns_server_addr_parse(struct dns_server *server, const char *addr)
Parses a string IPv4 or IPv6 address and optional colon separated port, into a in_addr or in6_addr re...
struct dns_server * servers
struct dns_server * servers_prepull
unsigned short sa_family_t
bool dns_options_verify(int msglevel, const struct dns_options *o)
Checks validity of DNS options.
bool dns_server_priority_parse(long *priority, const char *str, bool pulled)
Parses a string DNS server priority and validates it.
union dns_server_addr::@0 in
struct dns_domain * domains
struct dns_domain * search_domains
struct dns_server_addr addr[8]
Garbage collection arena used to keep track of dynamically allocated memory.
struct dns_server * dns_server_get(struct dns_server **entry, long priority, struct gc_arena *gc)
Find or create DNS server with priority in a linked list.
void show_dns_options(const struct dns_options *o)
Prints configured DNS options.
struct dns_options clone_dns_options(const struct dns_options o, struct gc_arena *gc)
Makes a deep copy of the passed DNS options.
void dns_options_postprocess_pull(struct dns_options *o)
Merges pulled DNS servers with static ones into an ordered list.