[−][src]Struct domain_resolv::stub::conf::ServerConf
Configuration for one upstream DNS server.
The server is identified by a socket address, ie., an address/port pair. For each server you can set how it should operate on all supported transport protocols, including not at all, and two timeouts for each request and sockets. The timeouts are used for all transports. If you need different timeouts for, say, UDP and TCP, you can always use two server entries with the same address.
Fields
addr: SocketAddr
Server address.
transport: Transport
Transport protocol.
request_timeout: Duration
How long to wait for a response before returning a timeout error.
This field defaults to 2 seconds.
recv_size: usize
Size of the message receive buffer in bytes.
This is used for datagram transports only. It defaults to 1232 bytes for both IPv6 and IPv4.
(Note: While 1372 bytes works for IPv4 in most scenarios, there has been research indicating that sometimes 1232 bytes is the limit here, sometimes too.)
udp_payload_size: u16
Advertised UDP payload size.
This values will be announced in request if EDNS is supported by the server. It will be included both for datagram and streaming transport but really only matters for UDP.
Implementations
impl ServerConf
[src]
pub fn new(addr: SocketAddr, transport: Transport) -> Self
[src]
Returns a new default server config for a given address and transport.
The function sets default values as described in the field descriptions above.
Trait Implementations
impl Clone for ServerConf
[src]
fn clone(&self) -> ServerConf
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Debug for ServerConf
[src]
Auto Trait Implementations
impl RefUnwindSafe for ServerConf
impl Send for ServerConf
impl Sync for ServerConf
impl Unpin for ServerConf
impl UnwindSafe for ServerConf
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,