pub struct SecurityBuiltinStack {
pub stateless_writer: StatelessMessageWriter,
pub stateless_reader: StatelessMessageReader,
pub volatile_writer: VolatileSecureMessageWriter,
pub volatile_reader: VolatileSecureMessageReader,
/* private fields */
}Expand description
Bundle aus den vier Security-Builtin-Endpoints.
Fields§
§stateless_writer: StatelessMessageWriterStateless-Auth-Writer (Spec §7.4.4).
stateless_reader: StatelessMessageReaderStateless-Auth-Reader.
volatile_writer: VolatileSecureMessageWriterVolatile-Secure-Writer (Spec §7.4.5).
volatile_reader: VolatileSecureMessageReaderVolatile-Secure-Reader.
Implementations§
Source§impl SecurityBuiltinStack
impl SecurityBuiltinStack
Sourcepub fn new(local_prefix: GuidPrefix, vendor_id: VendorId) -> Self
pub fn new(local_prefix: GuidPrefix, vendor_id: VendorId) -> Self
Erzeugt einen frischen Stack ohne Remote-Proxies.
Sourcepub fn local_prefix(&self) -> GuidPrefix
pub fn local_prefix(&self) -> GuidPrefix
Lokaler GuidPrefix.
Sourcepub fn handle_remote_endpoints(&mut self, peer: &DiscoveredParticipant)
pub fn handle_remote_endpoints(&mut self, peer: &DiscoveredParticipant)
Verdrahtet Reader-/Writer-Proxies auf Basis der vom Peer annoncierten BuiltinEndpointSet-Bits (Spec §7.4.7.1):
- Bits 22+23 (
PARTICIPANT_STATELESS_MESSAGE_*) → Stateless-Slot - Bits 24+25 (
PARTICIPANT_VOLATILE_MESSAGE_SECURE_*) → Volatile-Slot
Wir routen ueber metatraffic_unicast_locator (PID 0x0032),
fallback auf default_unicast_locator. Selbst-Discovery
(peer.sender_prefix == self.local_prefix) wird ignoriert.
Sourcepub fn on_participant_lost(&mut self, prefix: GuidPrefix) -> (usize, usize)
pub fn on_participant_lost(&mut self, prefix: GuidPrefix) -> (usize, usize)
Cleanup nach SPDP-Lease-Timeout: alle Proxies dieses Prefixes
entfernen. Liefert (stateless_pairs_removed, volatile_pairs_removed).
Sourcepub fn poll(
&mut self,
now: Duration,
) -> Result<Vec<OutboundDatagram>, WireError>
pub fn poll( &mut self, now: Duration, ) -> Result<Vec<OutboundDatagram>, WireError>
Tick ueber alle Endpoints. Liefert HEARTBEATs/Resends vom Volatile-Writer plus ACKNACK/NACK_FRAG vom Volatile-Reader. Stateless hat keinen Tick (BestEffort, kein Resend-State).
§Errors
Wire-Encode-Fehler aus dem Reliable-Layer.