pub struct KeySettlement<C> { /* private fields */ }Expand description
Client-side key settlement handling
Implementations§
Source§impl<C: KeySettlementCore> KeySettlement<C>
impl<C: KeySettlementCore> KeySettlement<C>
pub fn new(core: C) -> Self
Sourcepub fn system_version(&self) -> Option<&PublishedVersionEntry>
pub fn system_version(&self) -> Option<&PublishedVersionEntry>
System version for the currently established session
Sourcepub async fn seal(
&mut self,
data: &[u8],
user_data: &C::Data,
) -> Result<Vec<u8>>
pub async fn seal( &mut self, data: &[u8], user_data: &C::Data, ) -> Result<Vec<u8>>
Seal data for the service
Settles a key if none is settled.
§Errors
Forwards errors from settle
§Panics
Panics if chacha_box_ietf::seal panics.
Sourcepub fn try_seal(&self, data: &[u8]) -> Option<Vec<u8>>
pub fn try_seal(&self, data: &[u8]) -> Option<Vec<u8>>
Seal data for the service
Returns None if no key is settled.
§Panics
Panics if chacha_box_ietf::seal panics.
Sourcepub async fn session_id(&mut self, user_data: &C::Data) -> Result<&HeaderValue>
pub async fn session_id(&mut self, user_data: &C::Data) -> Result<&HeaderValue>
Sourcepub fn try_session_id(&self) -> Option<&HeaderValue>
pub fn try_session_id(&self) -> Option<&HeaderValue>
Return a settled session ID
Returns None if no key is settled.
Trait Implementations§
Auto Trait Implementations§
impl<C> !Freeze for KeySettlement<C>
impl<C> RefUnwindSafe for KeySettlement<C>where
C: RefUnwindSafe,
impl<C> Send for KeySettlement<C>where
C: Send,
impl<C> Sync for KeySettlement<C>where
C: Sync,
impl<C> Unpin for KeySettlement<C>where
C: Unpin,
impl<C> UnsafeUnpin for KeySettlement<C>where
C: UnsafeUnpin,
impl<C> UnwindSafe for KeySettlement<C>where
C: UnwindSafe,
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§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