Module relaycell

Source
Expand description

Implementation for parsing and encoding relay cells

Modules§

confluxconflux
Encoding and decoding for relay messages related to conflux.
extend
Types and encodings used during circuit extension.
extlist 🔒
Helpers to manage lists of extensions within relay messages.
hshs
Encoding and decoding for relay messages related to onion services.
msg
Encoding and decoding for relay messages
udpexperimental-udp
Encoding and decoding for relay messages

Structs§

BodyWrapper 🔒
Wrap a BoxedCellBody and implement AsMut<u8>, so we can use it with SliceWriter.
IncompleteRelayMsgInfo
Information about a relay message for which we don’t yet have the complete body.
RelayCellDecoder
Decodes a stream of relay cell bodies into UnparsedRelayMsgs.
RelayCellDecoderResult
Result of calling RelayCellDecoder::decode.
RelayCmd
A command that identifies the type of a relay cell
RelayMsgOuter
A decoded and parsed relay message, along with an optional Stream ID.
StreamId
Identify a single stream on a circuit.
UnparsedRelayMsg
An enveloped relay message that has not yet been fully parsed, but where we have access to the command, stream ID, and payload data length for dispatching and congestion control purposes.

Enums§

RelayCellDecoderInternal 🔒
Internal decoder state.
RelayCellFormat
Specifies which encoding version of RelayCell to use.
StreamIdReq 🔒
Possible requirements on stream IDs for a relay command.
UnparsedRelayMsgInternal 🔒
Internal representation of an UnparsedRelayMsg.

Constants§

LENGTH_OFFSET_V0 🔒
Position of the payload data length within the V0 cell body.
LENGTH_OFFSET_V1 🔒
Position of the payload data length within the V1 cell body.
STREAM_ID_OFFSET_V0 🔒
Position of the stream ID within the V0 cell body.
STREAM_ID_OFFSET_V1 🔒
Position of the stream ID within the V1 cell body, if it is present.

Traits§

RelayMsg
Trait implemented by anything that can serve as a relay message.

Type Aliases§

AnyRelayCellDeprecated
A deprecated name for AnyRelayMsgOuter.
AnyRelayMsgOuter
A decoded and parsed relay message of unrestricted type, with an accompanying optional Stream ID.
RelayCellDeprecated
A deprecated name for RelayMsgOuter.