#[non_exhaustive]pub enum EchOutcome {
NotOffered,
Accepted,
Rejected,
Unknown,
}Available on crate feature
tls only.Expand description
Aggregate ECH outcome on a TlsHandshake. Plan 144, 0.12.0.
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.
NotOffered
Client did not offer ECH.
Accepted
Client offered ECH and the server did not signal rejection in observable plaintext. Most ECH-accepted handshakes land here (EncryptedExtensions carries retry_configs encrypted; we can’t see them).
Rejected
Client offered ECH; server’s plaintext EE carries retry_configs — explicit rejection on early handshake errors.
Unknown
Client offered ECH; outcome indeterminate (handshake did not reach ServerHello / EncryptedExtensions).
Trait Implementations§
Source§impl Clone for EchOutcome
impl Clone for EchOutcome
Source§fn clone(&self) -> EchOutcome
fn clone(&self) -> EchOutcome
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for EchOutcome
Source§impl Debug for EchOutcome
impl Debug for EchOutcome
Source§impl<'de> Deserialize<'de> for EchOutcome
impl<'de> Deserialize<'de> for EchOutcome
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for EchOutcome
Source§impl PartialEq for EchOutcome
impl PartialEq for EchOutcome
Source§fn eq(&self, other: &EchOutcome) -> bool
fn eq(&self, other: &EchOutcome) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl Serialize for EchOutcome
impl Serialize for EchOutcome
impl StructuralPartialEq for EchOutcome
Auto Trait Implementations§
impl Freeze for EchOutcome
impl RefUnwindSafe for EchOutcome
impl Send for EchOutcome
impl Sync for EchOutcome
impl Unpin for EchOutcome
impl UnsafeUnpin for EchOutcome
impl UnwindSafe for EchOutcome
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.