Struct trust_dns_resolver::name_server::NameServer
source · [−]pub struct NameServer<C: DnsHandle<Error = ResolveError> + Send, P: ConnectionProvider<Conn = C> + Send> { /* private fields */ }
Expand description
Specifies the details of a remote NameServer used for lookups
Implementations
sourceimpl NameServer<TokioConnection, TokioConnectionProvider>
impl NameServer<TokioConnection, TokioConnectionProvider>
sourcepub fn new(
config: NameServerConfig,
options: ResolverOpts,
runtime: TokioHandle
) -> Self
Available on crate feature tokio-runtime
only.
pub fn new(
config: NameServerConfig,
options: ResolverOpts,
runtime: TokioHandle
) -> Self
tokio-runtime
only.A shortcut for constructing a nameserver usable in the Tokio runtime
sourceimpl<C: DnsHandle<Error = ResolveError>, P: ConnectionProvider<Conn = C>> NameServer<C, P>
impl<C: DnsHandle<Error = ResolveError>, P: ConnectionProvider<Conn = C>> NameServer<C, P>
sourcepub fn new_with_provider(
config: NameServerConfig,
options: ResolverOpts,
conn_provider: P
) -> Self
pub fn new_with_provider(
config: NameServerConfig,
options: ResolverOpts,
conn_provider: P
) -> Self
Construct a new Nameserver with the configuration and options. The connection provider will create UDP and TCP sockets
sourcepub fn trust_nx_responses(&self) -> bool
pub fn trust_nx_responses(&self) -> bool
Specifies that thie NameServer will treat negative responses as permanent failures and will not retry
Trait Implementations
sourceimpl<C: Clone + DnsHandle<Error = ResolveError> + Send, P: Clone + ConnectionProvider<Conn = C> + Send> Clone for NameServer<C, P>
impl<C: Clone + DnsHandle<Error = ResolveError> + Send, P: Clone + ConnectionProvider<Conn = C> + Send> Clone for NameServer<C, P>
sourcefn clone(&self) -> NameServer<C, P>
fn clone(&self) -> NameServer<C, P>
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl<C: DnsHandle<Error = ResolveError>, P: ConnectionProvider<Conn = C>> Debug for NameServer<C, P>
impl<C: DnsHandle<Error = ResolveError>, P: ConnectionProvider<Conn = C>> Debug for NameServer<C, P>
sourceimpl<C, P> DnsHandle for NameServer<C, P> where
C: DnsHandle<Error = ResolveError>,
P: ConnectionProvider<Conn = C>,
impl<C, P> DnsHandle for NameServer<C, P> where
C: DnsHandle<Error = ResolveError>,
P: ConnectionProvider<Conn = C>,
type Response = Pin<Box<dyn Stream<Item = Result<DnsResponse, ResolveError>> + Send + 'static, Global>>
type Response = Pin<Box<dyn Stream<Item = Result<DnsResponse, ResolveError>> + Send + 'static, Global>>
The associated response from the response stream, this should resolve to the Response messages
type Error = ResolveError
type Error = ResolveError
Error of the response, generally this will be ProtoError
sourcefn is_verifying_dnssec(&self) -> bool
fn is_verifying_dnssec(&self) -> bool
Only returns true if and only if this DNS handle is validating DNSSec. Read more
sourcefn send<R: Into<DnsRequest> + Unpin + Send + 'static>(
&mut self,
request: R
) -> Self::Response
fn send<R: Into<DnsRequest> + Unpin + Send + 'static>(
&mut self,
request: R
) -> Self::Response
Send a message via the channel in the client Read more
sourcefn is_using_edns(&self) -> bool
fn is_using_edns(&self) -> bool
Allow for disabling EDNS
sourceimpl<C: DnsHandle<Error = ResolveError>, P: ConnectionProvider<Conn = C>> Ord for NameServer<C, P>
impl<C: DnsHandle<Error = ResolveError>, P: ConnectionProvider<Conn = C>> Ord for NameServer<C, P>
sourcefn cmp(&self, other: &Self) -> Ordering
fn cmp(&self, other: &Self) -> Ordering
Custom implementation of Ord for NameServer which incorporates the performance of the connection into it’s ranking
1.21.0 · sourcefn max(self, other: Self) -> Self
fn max(self, other: Self) -> Self
Compares and returns the maximum of two values. Read more
1.21.0 · sourcefn min(self, other: Self) -> Self
fn min(self, other: Self) -> Self
Compares and returns the minimum of two values. Read more
1.50.0 · sourcefn clamp(self, min: Self, max: Self) -> Self where
Self: PartialOrd<Self>,
fn clamp(self, min: Self, max: Self) -> Self where
Self: PartialOrd<Self>,
Restrict a value to a certain interval. Read more
sourceimpl<C: DnsHandle<Error = ResolveError>, P: ConnectionProvider<Conn = C>> PartialEq<NameServer<C, P>> for NameServer<C, P>
impl<C: DnsHandle<Error = ResolveError>, P: ConnectionProvider<Conn = C>> PartialEq<NameServer<C, P>> for NameServer<C, P>
sourceimpl<C: DnsHandle<Error = ResolveError>, P: ConnectionProvider<Conn = C>> PartialOrd<NameServer<C, P>> for NameServer<C, P>
impl<C: DnsHandle<Error = ResolveError>, P: ConnectionProvider<Conn = C>> PartialOrd<NameServer<C, P>> for NameServer<C, P>
sourcefn partial_cmp(&self, other: &Self) -> Option<Ordering>
fn partial_cmp(&self, other: &Self) -> Option<Ordering>
This method returns an ordering between self
and other
values if one exists. Read more
1.0.0 · sourcefn lt(&self, other: &Rhs) -> bool
fn lt(&self, other: &Rhs) -> bool
This method tests less than (for self
and other
) and is used by the <
operator. Read more
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
impl<C: DnsHandle<Error = ResolveError>, P: ConnectionProvider<Conn = C>> Eq for NameServer<C, P>
Auto Trait Implementations
impl<C, P> !RefUnwindSafe for NameServer<C, P>
impl<C, P> Send for NameServer<C, P>
impl<C, P> Sync for NameServer<C, P>
impl<C, P> Unpin for NameServer<C, P>
impl<C, P> !UnwindSafe for NameServer<C, P>
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<Q, K> Equivalent<K> for Q where
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Q where
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
sourcefn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to key
and return true
if they are equal.
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
fn vzip(self) -> V
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more