Enum LoweredProfileItem
#[non_exhaustive]pub enum LoweredProfileItem {
Show 38 variants
TlsServerNamePresence,
CallerTlsAlpn,
TlsAlpnTargetVersion,
CallerTlsSessionOffer,
TlsSessionOfferOptional,
CallerTlsVersionBounds,
CallerTlsCipherSuites,
TlsNativeConnection,
TlsLegacyFields,
TlsRequiredField {
extension: u16,
},
TlsExtension {
extension: u16,
},
TlsCipherSuites,
TlsSupportedGroups,
TlsSignatureAlgorithms,
TlsSupportedVersions,
TlsKeyShares,
TlsEcPointFormats,
TlsSessionTicket,
TlsAlps,
TlsCertificateCompression,
TlsTrustAnchors,
TlsLegacyExtensionPair,
QuicTransportParametersLength,
CallerQuicProfile,
CallerHttp3Settings,
CallerQpackBase,
CallerQpackFieldPreferences,
Http3StartupOrder,
CallerHttp3Startup,
CallerQpackEncoding,
CallerHttp3Controls,
Http3InitialInsertions,
Http2Settings,
UnemulatedConnection,
CallerUserAgent,
CallerClientHints,
CallerHttp,
CallerTls,
}std and ua only.Expand description
A captured property replaced by native or caller behaviour during replay.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
TlsServerNamePresence
SNI presence follows the destination identity.
CallerTlsAlpn
The caller’s explicit ALPN offer was retained.
TlsAlpnTargetVersion
The captured ALPN offer lacks the required HTTP version.
CallerTlsSessionOffer
The caller’s required session offer was retained.
TlsSessionOfferOptional
A captured session offer is sent only when a compatible stored session exists.
CallerTlsVersionBounds
The caller’s TLS version bounds were retained.
CallerTlsCipherSuites
The caller’s cipher suite policy was retained.
TlsNativeConnection
The captured TLS offer cannot be replayed safely; the connection uses native TLS.
TlsLegacyFields
Legacy version or compression fields use native values.
TlsRequiredField
A field native TLS always sends was absent from the capture.
TlsExtension
A captured extension or its shape has no native equivalent.
TlsCipherSuites
Unsupported cipher suites were dropped, or the native list kept.
TlsSupportedGroups
Unsupported groups were dropped, or the native list kept.
TlsSignatureAlgorithms
Unsupported signature schemes were dropped, or the native list kept.
TlsSupportedVersions
The version list or its order follows native negotiation.
Key shares follow native selection.
TlsEcPointFormats
EC point formats are sent as native TLS 1.2 offers do.
TlsSessionTicket
The session ticket extension is omitted without a TLS 1.2 offer.
TlsAlps
The captured ALPS offer is replaced by the native one.
TlsCertificateCompression
The captured certificate compression list is replaced by the native one.
TlsTrustAnchors
Trust anchors follow the current binding, if any.
TlsLegacyExtensionPair
Extended master secret and renegotiation info are sent together.
QuicTransportParametersLength
The engine’s transport-parameter length differs from the capture.
CallerQuicProfile
The caller’s QUIC transport profile was retained.
CallerHttp3Settings
The caller’s HTTP/3 SETTINGS profile was retained.
CallerQpackBase
The caller’s QPACK Base preference was retained.
CallerQpackFieldPreferences
The caller’s QPACK field preferences were retained.
Http3StartupOrder
The captured HTTP/3 stream order has no allocated-ID startup equivalent.
CallerHttp3Startup
The caller’s HTTP/3 critical stream startup was retained.
CallerQpackEncoding
The caller’s initial QPACK encoder preferences were retained.
CallerHttp3Controls
The caller’s HTTP/3 control frame preferences were retained.
Http3InitialInsertions
Captured initial QPACK insertions were dropped; the section uses native encoding.
Http2Settings
The connection was recorded without HTTP/2 SETTINGS; native ones are sent.
UnemulatedConnection
The request was sent on a connection not opened by the profile connector; only its request fields follow the profile.
CallerUserAgent
The caller’s User-Agent value was kept, as asked by
PreserveHeaderUserAgent.
CallerClientHints
The caller’s client hint values were kept, as asked by
PreserveClientHints.
CallerHttp
The caller’s HTTP headers and connection settings were kept, as asked by
HttpAgent::Preserve.
CallerTls
The connection used the caller’s own TLS configuration, as asked by
TlsAgent::Preserve.
Trait Implementations§
§impl Clone for LoweredProfileItem
impl Clone for LoweredProfileItem
§fn clone(&self) -> LoweredProfileItem
fn clone(&self) -> LoweredProfileItem
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for LoweredProfileItem
§impl Debug for LoweredProfileItem
impl Debug for LoweredProfileItem
impl Eq for LoweredProfileItem
§impl PartialEq for LoweredProfileItem
impl PartialEq for LoweredProfileItem
§impl Serialize for LoweredProfileItem
impl Serialize for LoweredProfileItem
§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
impl StructuralPartialEq for LoweredProfileItem
Auto Trait Implementations§
impl Freeze for LoweredProfileItem
impl RefUnwindSafe for LoweredProfileItem
impl Send for LoweredProfileItem
impl Sync for LoweredProfileItem
impl Unpin for LoweredProfileItem
impl UnsafeUnpin for LoweredProfileItem
impl UnwindSafe for LoweredProfileItem
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