pub struct HoprOutgoingPacket {
pub packet: MetaPacket<HoprSphinxSuite, HoprSphinxHeaderSpec, PAYLOAD_SIZE_INT>,
pub ticket: Ticket,
pub next_hop: OffchainPublicKey,
pub ack_challenge: HalfKeyChallenge,
pub encrypted_pix_share: Option<TaggedEncryptedPartialSsaShare<HoprPixSpec>>,
}Expand description
Represents a packet destined for another node.
Fields§
§packet: MetaPacket<HoprSphinxSuite, HoprSphinxHeaderSpec, PAYLOAD_SIZE_INT>Encrypted packet.
ticket: TicketTicket for this node.
next_hop: OffchainPublicKeyNext hop this packet should be sent to.
ack_challenge: HalfKeyChallengeAcknowledgement challenge solved once the next hop sends us an acknowledgement.
PIX protocol encrypted partial SSA share to be decrypted once the next hop sends back an acknowledgement.
This is populated only if this is a return path packet and the associated SURB contained an encrypted partial SSA share.
Trait Implementations§
Source§impl Clone for HoprOutgoingPacket
impl Clone for HoprOutgoingPacket
Source§fn clone(&self) -> HoprOutgoingPacket
fn clone(&self) -> HoprOutgoingPacket
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 moreAuto Trait Implementations§
impl Freeze for HoprOutgoingPacket
impl RefUnwindSafe for HoprOutgoingPacket
impl Send for HoprOutgoingPacket
impl Sync for HoprOutgoingPacket
impl Unpin for HoprOutgoingPacket
impl UnsafeUnpin for HoprOutgoingPacket
impl UnwindSafe for HoprOutgoingPacket
Blanket Implementations§
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<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<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