pub struct HelperInfo {
pub channel_id: u64,
pub transport_uri: String,
pub shared_key: Vec<u8>,
pub communication_info: HashMap<String, String>,
}Expand description
Per-helper metadata stored inside the secret bag for recovery.
Each entry records the pairing state of a Helper so that recovery can re-establish communication channels without external configuration.
Fields§
§channel_id: u64Unique channel identifier assigned during pairing.
transport_uri: StringThe Helper’s message endpoint URI.
Symmetric key negotiated during pairing (32 bytes).
communication_info: HashMap<String, String>App-level identity metadata for this helper. Free-form key/value
pairs — the protocol treats it as opaque, never inspects keys or
values, and copies it verbatim from Channel::communication_info
at protect-time. A recovering owner who decodes the bag can use
this to recognise each helper (e.g. by a "name" key the app set
on pairing).
Wire stability: the now-removed name: String was previously at
tag 3. Using tag 5 lets prost silently drop the old name field
when decoding legacy bags (empty communication_info), and lets
older codebases silently drop this new field when decoding new
bags. Degraded but not broken in either direction.
Trait Implementations§
Source§impl Clone for HelperInfo
impl Clone for HelperInfo
Source§fn clone(&self) -> HelperInfo
fn clone(&self) -> HelperInfo
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for HelperInfo
impl Debug for HelperInfo
Source§impl Default for HelperInfo
impl Default for HelperInfo
Source§impl Message for HelperInfo
impl Message for HelperInfo
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self.Source§impl PartialEq for HelperInfo
impl PartialEq for HelperInfo
impl StructuralPartialEq for HelperInfo
Auto Trait Implementations§
impl Freeze for HelperInfo
impl RefUnwindSafe for HelperInfo
impl Send for HelperInfo
impl Sync for HelperInfo
impl Unpin for HelperInfo
impl UnsafeUnpin for HelperInfo
impl UnwindSafe for HelperInfo
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
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,
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>
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>
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