pub struct ResolvOptions {Show 23 fields
pub search: SearchList,
pub ndots: usize,
pub timeout: Duration,
pub attempts: usize,
pub aa_only: bool,
pub use_vc: bool,
pub primary: bool,
pub ign_tc: bool,
pub recurse: bool,
pub default_names: bool,
pub stay_open: bool,
pub dn_search: bool,
pub use_inet6: bool,
pub rotate: bool,
pub no_check_name: bool,
pub keep_tsig: bool,
pub blast: bool,
pub use_bstring: bool,
pub use_ip6dotint: bool,
pub use_edns0: bool,
pub single_request: bool,
pub single_request_reopen: bool,
pub no_tld_query: bool,
}
Expand description
Options for the resolver configuration.
This type contains a lot of options that influence the resolver configuration. It collects all server-indpendent options that glibc’s resolver supports. Not all of them are currently supported by this implementation.
Fields§
§search: SearchList
Search list for host-name lookup.
ndots: usize
TODO Sortlist sortlist: ?? Number of dots before an initial absolute query is made.
timeout: Duration
Timeout to wait for a response.
attempts: usize
Number of retries before giving up.
aa_only: bool
Accept authoritative answers only.
Only responses with the AA bit set will be considered. If there aren’t any, the query will fail.
This option is not currently implemented. It is likely to be eventually implemented by the query.
use_vc: bool
Always use TCP.
This option is implemented by the query.
primary: bool
Query primary name servers only.
This option is not currently implemented. It is unclear what exactly it is supposed to mean.
ign_tc: bool
Ignore trunactions errors, don’t retry with TCP.
This option is implemented by the query.
recurse: bool
Set the recursion desired bit in queries.
Enabled by default.
Implemented by the query request.
default_names: bool
Append the default domain name to single component names.
Enabled by default.
This is not currently implemented. Instead, the resolver config’s
search
and ndots
fields govern resolution of relative names of
all kinds.
stay_open: bool
Keep TCP connections open between queries.
This is not currently implemented.
dn_search: bool
Search hostnames in the current domain and parent domains.
Enabled by default.
This options is not currently implemented. Instead, the resolver
config’s search
and ndots
fields govern resolution of relative
names.
use_inet6: bool
Try AAAA query before A query and map IPv4 responses to tunnel form.
This option is not currently implemented. It is only relevant for
lookup_host
.
rotate: bool
Use round-robin selection of name servers.
This option is implemented by the query.
no_check_name: bool
Disable checking of incoming hostname and mail names.
This is not currently implemented. Or rather, this is currently always on—there is no name checking as yet.
keep_tsig: bool
Do not strip TSIG records.
This is not currently implemented. Or rather, no records are stripped at all.
blast: bool
Send each query simultaneously to all name servers.
This is not currently implemented. It would be a query option.
use_bstring: bool
Use bit-label format for IPv6 reverse lookups.
Bit labels have been deprecated and consequently, this option is not implemented.
use_ip6dotint: bool
Use ip6.int instead of the recommended ip6.arpa.
(This option is the reverse of glibc’s RES_NOIP6DOTINT
option).
This option is only relevant for lookup_addr()
and is implemented
there already.
use_edns0: bool
Use EDNS0.
EDNS is not yet supported.
single_request: bool
Perform IPv4 and IPv6 lookups sequentially instead of in parallel.
This is not yet implemented but would be an option for
lookup_host()
.
single_request_reopen: bool
Open a new socket for each request.
This is not currently implemented.
no_tld_query: bool
Don’t look up unqualified names as top-level-domain.
This is not currently implemented. Instead, the resolver config’s
search
and ndots
fields govern resolution of relative names of
all kinds.
Trait Implementations§
source§impl Clone for ResolvOptions
impl Clone for ResolvOptions
source§fn clone(&self) -> ResolvOptions
fn clone(&self) -> ResolvOptions
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more