pub enum SVCParam<'a> {
Mandatory(BTreeSet<u16>),
Alpn(Vec<CharacterString<'a>>),
NoDefaultAlpn,
Port(u16),
Ipv4Hint(Vec<u32>),
Ech(Cow<'a, [u8]>),
Ipv6Hint(Vec<u128>),
InvalidKey,
Unknown(u16, Cow<'a, [u8]>),
}
Expand description
The SVC Param section of the SVCB DNS RR type. RFC 9460.
Known parameters are defined as variants of this enum and properly parsed. Unknown parameters are stored as Self::Unknown variant.
Variants§
Mandatory(BTreeSet<u16>)
Mandatory keys in this RR. Key Code 0.
Alpn(Vec<CharacterString<'a>>)
Additional supported protocols. Key Code 1.
NoDefaultAlpn
No support for default protocol. Key Code 2.
Port(u16)
Port for alternative endpoint. Key Code 3.
Ipv4Hint(Vec<u32>)
IPv4 address hints. Key Code 4.
Ech(Cow<'a, [u8]>)
Encrypted ClientHello (ECH) configuration. Key Code 5.
Ipv6Hint(Vec<u128>)
IPv6 address hints. Key Code 6.
InvalidKey
Reserved for invalid keys. Key Code 65535.
Unknown(u16, Cow<'a, [u8]>)
Unknown key format.
Implementations§
Trait Implementations§
impl<'a> Eq for SVCParam<'a>
impl<'a> StructuralPartialEq for SVCParam<'a>
Auto Trait Implementations§
impl<'a> Freeze for SVCParam<'a>
impl<'a> RefUnwindSafe for SVCParam<'a>
impl<'a> Send for SVCParam<'a>
impl<'a> Sync for SVCParam<'a>
impl<'a> Unpin for SVCParam<'a>
impl<'a> UnwindSafe for SVCParam<'a>
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