Enum trust_dns_server::server::Protocol
source · #[non_exhaustive]pub enum Protocol {
Udp,
Tcp,
Tls,
Dtls,
Https,
Quic,
}
Expand description
For tracking purposes of inbound requests, which protocol was used
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Udp
User Datagram Protocol, the default for all DNS requests
Tcp
Transmission Control Protocol, used in DNS primarily for large responses (avoids truncation) and AXFR/IXFR
Tls
Transport Layer Security over TCP, for establishing a privacy, DoT (similar to DoH)
Dtls
Datagram Transport Layer Security over UDP
Https
HTTP over TLS, DNS over HTTPS, aka DoH (similar to DoT)
Quic
Quic, DNS over Quic, aka DoQ (similar to DoH)
Trait Implementations§
impl Copy for Protocol
Auto Trait Implementations§
impl RefUnwindSafe for Protocol
impl Send for Protocol
impl Sync for Protocol
impl Unpin for Protocol
impl UnwindSafe for Protocol
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more