Struct HandshakeSummary
pub struct HandshakeSummary {
pub protocol: Option<ApplicationProtocol>,
pub server_name: Option<Domain>,
pub resumed: Option<bool>,
}quic and std only.Expand description
Negotiated ALPN and received server name reported by the TLS backend.
Available once the session has the data, which is before the handshake is confirmed.
Fields§
§protocol: Option<ApplicationProtocol>The application protocol both sides agreed on (RFC 7301), when ALPN was used.
server_name: Option<Domain>The name the client sent in its SNI extension, when it sent one. It is what the peer
said, not an identity a certificate was verified against, and the backend may have
canonicalised its case. None on a client, and on a server whose peer sent no SNI,
which includes a client connecting to an IP address (RFC 6066 §3).
resumed: Option<bool>Whether the handshake resumed a session rather than doing a full one.
None until the backend has decided, which can be after the rest of this summary is
available: the two are read separately. Both ends report it once it is known.
Trait Implementations§
§impl Clone for HandshakeSummary
impl Clone for HandshakeSummary
§fn clone(&self) -> HandshakeSummary
fn clone(&self) -> HandshakeSummary
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more§impl Debug for HandshakeSummary
impl Debug for HandshakeSummary
§impl Default for HandshakeSummary
impl Default for HandshakeSummary
§fn default() -> HandshakeSummary
fn default() -> HandshakeSummary
impl Eq for HandshakeSummary
§impl PartialEq for HandshakeSummary
impl PartialEq for HandshakeSummary
impl StructuralPartialEq for HandshakeSummary
Auto Trait Implementations§
impl !Freeze for HandshakeSummary
impl RefUnwindSafe for HandshakeSummary
impl Send for HandshakeSummary
impl Sync for HandshakeSummary
impl Unpin for HandshakeSummary
impl UnsafeUnpin for HandshakeSummary
impl UnwindSafe for HandshakeSummary
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a rama_grpc::Request§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§fn and<P, B, E>(self, other: P) -> And<T, P>
fn and<P, B, E>(self, other: P) -> And<T, P>
Policy that returns Action::Follow only if self and other return
Action::Follow. Read more