pub struct MobileMeshAdvertisementRecord {
pub peer_address: String,
pub payload: Vec<u8>,
pub source_authenticated: bool,
}Expand description
A node-identity bundle received over the mesh, either as a broadcast advertisement or as the reply to an Identity Request.
Only frames whose sender the MAC could name are surfaced. How the claims
may be trusted depends on how they arrived, which is what
source_authenticated reports.
Fields§
§peer_address: StringCanonical Base58 address of the claimed sender.
payload: Vec<u8>Raw node-identity payload bytes (without the payload-type byte),
decodable with decode_node_identity.
source_authenticated: boolWhether the MAC authenticated the sender of the frame that carried this bundle.
A unicast Identity Request reply is authenticated by its MIC, so it
carries no detached signature and decodes as Unsigned — it is
nonetheless trustworthy, and the platform must accept it. A broadcast
advertisement has no MIC, so it is false and the platform must
require a Valid embedded signature before trusting any claim.
Trait Implementations§
Source§impl Clone for MobileMeshAdvertisementRecord
impl Clone for MobileMeshAdvertisementRecord
Source§fn clone(&self) -> MobileMeshAdvertisementRecord
fn clone(&self) -> MobileMeshAdvertisementRecord
1.0.0§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl<UT> ConvertError<UT> for MobileMeshAdvertisementRecord
impl<UT> ConvertError<UT> for MobileMeshAdvertisementRecord
fn try_convert_unexpected_callback_error( e: UnexpectedUniFFICallbackError, ) -> Result<Self>
Source§impl<UT> FfiConverter<UT> for MobileMeshAdvertisementRecord
impl<UT> FfiConverter<UT> for MobileMeshAdvertisementRecord
Source§const TYPE_ID_META: MetadataBuffer
const TYPE_ID_META: MetadataBuffer
Source§type FfiType = RustBuffer
type FfiType = RustBuffer
Source§fn lower(v: Self) -> RustBuffer
fn lower(v: Self) -> RustBuffer
Source§fn try_lift(buf: RustBuffer) -> Result<Self>
fn try_lift(buf: RustBuffer) -> Result<Self>
Source§impl<UT> Lift<UT> for MobileMeshAdvertisementRecord
impl<UT> Lift<UT> for MobileMeshAdvertisementRecord
Source§impl<UT> LiftRef<UT> for MobileMeshAdvertisementRecord
impl<UT> LiftRef<UT> for MobileMeshAdvertisementRecord
Source§impl<UT> LiftReturn<UT> for MobileMeshAdvertisementRecord
impl<UT> LiftReturn<UT> for MobileMeshAdvertisementRecord
Source§type ReturnType = <MobileMeshAdvertisementRecord as Lift<UT>>::FfiType
type ReturnType = <MobileMeshAdvertisementRecord as Lift<UT>>::FfiType
Source§fn try_lift_successful_return(v: Self::ReturnType) -> Result<Self>
fn try_lift_successful_return(v: Self::ReturnType) -> Result<Self>
Source§fn lift_foreign_return(
ffi_return: Self::ReturnType,
call_status: RustCallStatus,
) -> Self
fn lift_foreign_return( ffi_return: Self::ReturnType, call_status: RustCallStatus, ) -> Self
Source§fn lift_error(_buf: RustBuffer) -> Self
fn lift_error(_buf: RustBuffer) -> Self
Source§fn handle_callback_unexpected_error(e: UnexpectedUniFFICallbackError) -> Self
fn handle_callback_unexpected_error(e: UnexpectedUniFFICallbackError) -> Self
Source§impl<UT> Lower<UT> for MobileMeshAdvertisementRecord
impl<UT> Lower<UT> for MobileMeshAdvertisementRecord
type FfiType = <MobileMeshAdvertisementRecord as FfiConverter<UT>>::FfiType
fn lower(obj: Self) -> Self::FfiType
fn write(obj: Self, buf: &mut Vec<u8>)
Source§fn lower_into_rust_buffer(obj: Self) -> RustBuffer
fn lower_into_rust_buffer(obj: Self) -> RustBuffer
Source§impl<UT> LowerError<UT> for MobileMeshAdvertisementRecord
impl<UT> LowerError<UT> for MobileMeshAdvertisementRecord
Source§fn lower_error(obj: Self) -> RustBuffer
fn lower_error(obj: Self) -> RustBuffer
Source§impl<UT> LowerReturn<UT> for MobileMeshAdvertisementRecord
impl<UT> LowerReturn<UT> for MobileMeshAdvertisementRecord
Source§type ReturnType = <MobileMeshAdvertisementRecord as Lower<UT>>::FfiType
type ReturnType = <MobileMeshAdvertisementRecord as Lower<UT>>::FfiType
Source§fn lower_return(v: Self) -> Result<Self::ReturnType, RustCallError>
fn lower_return(v: Self) -> Result<Self::ReturnType, RustCallError>
Source§fn handle_failed_lift(
error: LiftArgsError,
) -> Result<Self::ReturnType, RustCallError>
fn handle_failed_lift( error: LiftArgsError, ) -> Result<Self::ReturnType, RustCallError>
Source§impl<UT> TypeId<UT> for MobileMeshAdvertisementRecord
impl<UT> TypeId<UT> for MobileMeshAdvertisementRecord
impl Eq for MobileMeshAdvertisementRecord
impl StructuralPartialEq for MobileMeshAdvertisementRecord
Auto Trait Implementations§
impl Freeze for MobileMeshAdvertisementRecord
impl RefUnwindSafe for MobileMeshAdvertisementRecord
impl Send for MobileMeshAdvertisementRecord
impl Sync for MobileMeshAdvertisementRecord
impl Unpin for MobileMeshAdvertisementRecord
impl UnwindSafe for MobileMeshAdvertisementRecord
Blanket Implementations§
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
clone_to_uninit)Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.