Struct Socks5HandshakeConnect
pub struct Socks5HandshakeConnect {
pub timestamp_ns: u64,
pub destination_host: Host,
pub destination_port: u32,
pub reply_kind: u32,
}Available on crate features
socks5 and dial9 only.Expand description
CONNECT reply outcome carried in a SOCKS5 server reply.
Fields§
§timestamp_ns: u64§destination_host: HostDestination host the client requested.
destination_port: u32Destination port the client requested.
reply_kind: u32Server reply kind, per RFC 1928 §6. See
crate::proto::ReplyKind for the canonical name → byte
mapping.
Trait Implementations§
§impl TraceEvent for Socks5HandshakeConnect
impl TraceEvent for Socks5HandshakeConnect
§type Ref<'a> = Socks5HandshakeConnectRef<'a>
type Ref<'a> = Socks5HandshakeConnectRef<'a>
Decoded form of this event, potentially borrowing from the input buffer.
§fn event_name() -> &'static str
fn event_name() -> &'static str
The event type name (used in schema registration).
§fn field_defs() -> Vec<FieldDef>
fn field_defs() -> Vec<FieldDef>
Field definitions for schema registration.
When
has_timestamp() is true, the timestamp is NOT included here —
it is encoded in the event frame header.§fn encode_fields<W>(&self, enc: &mut EventEncoder<'_, W>) -> Result<(), Error>where
W: Write,
fn encode_fields<W>(&self, enc: &mut EventEncoder<'_, W>) -> Result<(), Error>where
W: Write,
Encode this event’s non-timestamp fields into the encoder.
§fn decode<'a>(
timestamp_ns: Option<u64>,
fields: &[FieldValueRef<'a>],
field_defs: &[FieldDef],
) -> Option<<Socks5HandshakeConnect as TraceEvent>::Ref<'a>>
fn decode<'a>( timestamp_ns: Option<u64>, fields: &[FieldValueRef<'a>], field_defs: &[FieldDef], ) -> Option<<Socks5HandshakeConnect as TraceEvent>::Ref<'a>>
Decode from field values using field definitions for name resolution.
timestamp_ns is the absolute timestamp from the event header (if present).§fn has_timestamp() -> bool
fn has_timestamp() -> bool
Whether this event type carries a packed timestamp in the event header.
§fn schema_entry() -> SchemaEntry
fn schema_entry() -> SchemaEntry
Build a SchemaEntry for this event type.
Auto Trait Implementations§
impl Freeze for Socks5HandshakeConnect
impl RefUnwindSafe for Socks5HandshakeConnect
impl Send for Socks5HandshakeConnect
impl Sync for Socks5HandshakeConnect
impl Unpin for Socks5HandshakeConnect
impl UnsafeUnpin for Socks5HandshakeConnect
impl UnwindSafe for Socks5HandshakeConnect
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
Mutably borrows from an owned value. Read more
§impl<T> Encodable for Twhere
T: TraceEvent + 'static,
impl<T> Encodable for Twhere
T: TraceEvent + 'static,
§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> ⓘ
Converts
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> ⓘ
Converts
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>
Wrap the input message
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>
Create a new
Policy that returns Action::Follow only if self and other return
Action::Follow. Read more§impl<T, U> RamaTryFrom<T> for Uwhere
U: TryFrom<T>,
impl<T, U> RamaTryFrom<T> for Uwhere
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
fn rama_try_from(value: T) -> Result<U, <U as RamaTryFrom<T>>::Error>
§impl<T, U, CrateMarker> RamaTryInto<U, CrateMarker> for Twhere
U: RamaTryFrom<T, CrateMarker>,
impl<T, U, CrateMarker> RamaTryInto<U, CrateMarker> for Twhere
U: RamaTryFrom<T, CrateMarker>,
type Error = <U as RamaTryFrom<T, CrateMarker>>::Error
fn rama_try_into(self) -> Result<U, <U as RamaTryFrom<T, CrateMarker>>::Error>
§impl<V, F> ValueFormatter<&V> for F
impl<V, F> ValueFormatter<&V> for F
§fn format_value(writer: impl ValueWriter, value: &&V)
fn format_value(writer: impl ValueWriter, value: &&V)
Write
value to writer§impl<V, F> ValueFormatter<Arc<V>> for F
impl<V, F> ValueFormatter<Arc<V>> for F
§fn format_value(writer: impl ValueWriter, value: &Arc<V>)
fn format_value(writer: impl ValueWriter, value: &Arc<V>)
Write
value to writer§impl<V, F> ValueFormatter<Box<V>> for F
impl<V, F> ValueFormatter<Box<V>> for F
§fn format_value(writer: impl ValueWriter, value: &Box<V>)
fn format_value(writer: impl ValueWriter, value: &Box<V>)
Write
value to writer§impl<V, F> ValueFormatter<Cow<'_, V>> for F
impl<V, F> ValueFormatter<Cow<'_, V>> for F
§fn format_value(writer: impl ValueWriter, value: &Cow<'_, V>)
fn format_value(writer: impl ValueWriter, value: &Cow<'_, V>)
Write
value to writer§impl<V, F> ValueFormatter<Option<V>> for Fwhere
F: ValueFormatter<V> + ?Sized,
impl<V, F> ValueFormatter<Option<V>> for Fwhere
F: ValueFormatter<V> + ?Sized,
§fn format_value(writer: impl ValueWriter, value: &Option<V>)
fn format_value(writer: impl ValueWriter, value: &Option<V>)
Write
value to writer