[][src]Struct trust_dns_resolver::config::ResolverOpts

pub struct ResolverOpts {
    pub ndots: usize,
    pub timeout: Duration,
    pub attempts: usize,
    pub validate: bool,
    pub ip_strategy: LookupIpStrategy,
    pub cache_size: usize,
    pub use_hosts_file: bool,
    pub positive_min_ttl: Option<Duration>,
    pub negative_min_ttl: Option<Duration>,
    pub positive_max_ttl: Option<Duration>,
    pub negative_max_ttl: Option<Duration>,
    pub distrust_nx_responses: bool,
    pub num_concurrent_reqs: usize,
    // some fields omitted
}

Configuration for the Resolver

Fields

ndots: usize

Sets the number of dots that must appear (unless it's a final dot representing the root) that must appear before a query is assumted to include the TLD. The default is one, which means that www would never be assumed to be a TLD, and would always be appended to either the search

timeout: Duration

Specify the timeout for a request. Defaults to 5 seconds

attempts: usize

Number of attempts before giving up. Defaults to 2

validate: bool

Use DNSSec to validate the request

ip_strategy: LookupIpStrategy

The ip_strategy for the Resolver to use when lookup Ipv4 or Ipv6 addresses

cache_size: usize

Cache size is in number of records (some records can be large)

use_hosts_file: bool

Check /ect/hosts file before dns requery (only works for unix like OS)

positive_min_ttl: Option<Duration>

Optional minimum TTL for positive responses.

If this is set, any positive responses with a TTL lower than this value will have a TTL of positive_min_ttl instead. Otherwise, this will default to 0 seconds.

negative_min_ttl: Option<Duration>

Optional minimum TTL for negative (NXDOMAIN) responses.

If this is set, any positive responses with a TTL lower than this value will have a TTL of negative_min_ttl instead. Otherwise, this will default to 0 seconds.

positive_max_ttl: Option<Duration>

Optional maximum TTL for positive responses.

If this is set, any positive responses with a TTL higher than this value will have a TTL of positive_max_ttl instead. Otherwise, this will default to MAX_TTL seconds.

negative_max_ttl: Option<Duration>

Optional maximum TTL for negative (NXDOMAIN) responses.

If this is set, any positive responses with a TTL higher than this value will have a TTL of negative_max_ttl instead. Otherwise, this will default to MAX_TTL seconds.

distrust_nx_responses: bool

Default is to distrust negative responses from upstream nameservers

Currently only SERVFAIL responses are continued on, this may be expanded to include NXDOMAIN or NoError/Empty responses

num_concurrent_reqs: usize

Concurrent requests where more than one Nameserver is registered, the default is 2

0 or 1 will configure this to execute all requests serially

Trait Implementations

impl Clone for ResolverOpts[src]

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl Default for ResolverOpts[src]

fn default() -> Self[src]

Default values for the Reolver configuration.

This follows the resolv.conf defaults as defined in the Linux man pages

impl PartialEq<ResolverOpts> for ResolverOpts[src]

impl Eq for ResolverOpts[src]

impl Copy for ResolverOpts[src]

impl Debug for ResolverOpts[src]

Auto Trait Implementations

Blanket Implementations

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Erased for T