pub struct DiscoveredInterface {Show 30 fields
pub interface_type: String,
pub impl_name: Option<String>,
pub impl_version: Option<String>,
pub transport: bool,
pub name: String,
pub discovered: f64,
pub last_heard: f64,
pub heard_count: u32,
pub status: DiscoveredStatus,
pub stamp: Vec<u8>,
pub stamp_value: u32,
pub transport_id: [u8; 16],
pub network_id: [u8; 16],
pub hops: u8,
pub latitude: Option<f64>,
pub longitude: Option<f64>,
pub height: Option<f64>,
pub operator_lxmf_address: Option<[u8; 16]>,
pub reachable_on: Option<String>,
pub port: Option<u16>,
pub frequency: Option<u32>,
pub bandwidth: Option<u32>,
pub spreading_factor: Option<u8>,
pub coding_rate: Option<u8>,
pub modulation: Option<String>,
pub channel: Option<u8>,
pub ifac_netname: Option<String>,
pub ifac_netkey: Option<String>,
pub config_entry: Option<String>,
pub discovery_hash: [u8; 32],
}Expand description
Information about a discovered interface
Fields§
§interface_type: StringInterface type (e.g., “BackboneInterface”, “TCPServerInterface”, “RNodeInterface”)
impl_name: Option<String>Implementation and version advertised by the announcing stack.
impl_version: Option<String>§transport: boolWhether the announcing node has transport enabled
name: StringHuman-readable name of the interface
discovered: f64Timestamp when first discovered
last_heard: f64Timestamp of last announcement
heard_count: u32Number of times heard
status: DiscoveredStatusCurrent status based on last_heard
stamp: Vec<u8>Raw stamp bytes
stamp_value: u32Calculated stamp value (leading zeros)
transport_id: [u8; 16]Transport identity hash (truncated)
network_id: [u8; 16]Network identity hash (announcer)
hops: u8Number of hops to reach this interface
latitude: Option<f64>§longitude: Option<f64>§height: Option<f64>§operator_lxmf_address: Option<[u8; 16]>Optional 16-byte LXMF destination hash advertised by the operator.
reachable_on: Option<String>§port: Option<u16>§frequency: Option<u32>§bandwidth: Option<u32>§spreading_factor: Option<u8>§coding_rate: Option<u8>§modulation: Option<String>§channel: Option<u8>§ifac_netname: Option<String>§ifac_netkey: Option<String>§config_entry: Option<String>§discovery_hash: [u8; 32]Hash for storage key (SHA256 of transport_id + name)
Implementations§
Source§impl DiscoveredInterface
impl DiscoveredInterface
Sourcepub fn compute_status(&self) -> DiscoveredStatus
pub fn compute_status(&self) -> DiscoveredStatus
Compute the current status based on last_heard timestamp
Trait Implementations§
Source§impl Clone for DiscoveredInterface
impl Clone for DiscoveredInterface
Auto Trait Implementations§
impl Freeze for DiscoveredInterface
impl RefUnwindSafe for DiscoveredInterface
impl Send for DiscoveredInterface
impl Sync for DiscoveredInterface
impl Unpin for DiscoveredInterface
impl UnsafeUnpin for DiscoveredInterface
impl UnwindSafe for DiscoveredInterface
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> InterfaceConfigData for Twhere
T: Send + 'static,
impl<T> InterfaceConfigData for Twhere
T: Send + 'static,
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