pub struct Info<P: PublicKey> { /* private fields */ }
Expand description
Handshake information that is signed over by some peer.
Implementations§
Source§impl<P: PublicKey> Info<P>
impl<P: PublicKey> Info<P>
Sourcepub fn new(
recipient: P,
ephemeral_public_key: PublicKey,
timestamp: u64,
) -> Self
pub fn new( recipient: P, ephemeral_public_key: PublicKey, timestamp: u64, ) -> Self
Create a new info.
Sourcepub fn new_with_tag(
recipient: P,
ephemeral_public_key: PublicKey,
timestamp: u64,
data: &[u8],
) -> Self
pub fn new_with_tag( recipient: P, ephemeral_public_key: PublicKey, timestamp: u64, data: &[u8], ) -> Self
Create a new info with a tag linking to previous data.
For example, to allow for the info to also be linked to the hello message sent by the other peer, or having this information attest to a MAC using a previous shared session key.
pub fn check_tag(&self, data: &[u8]) -> Result<(), Error>
Trait Implementations§
Source§impl<P: PublicKey> EncodeSize for Info<P>
impl<P: PublicKey> EncodeSize for Info<P>
Source§fn encode_size(&self) -> usize
fn encode_size(&self) -> usize
Returns the encoded size of this value (in bytes).
Auto Trait Implementations§
impl<P> Freeze for Info<P>where
P: Freeze,
impl<P> RefUnwindSafe for Info<P>where
P: RefUnwindSafe,
impl<P> Send for Info<P>
impl<P> Sync for Info<P>
impl<P> Unpin for Info<P>where
P: Unpin,
impl<P> UnwindSafe for Info<P>where
P: UnwindSafe,
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
Source§impl<T> Encode for Twhere
T: Write + EncodeSize,
impl<T> Encode for Twhere
T: Write + EncodeSize,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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