pub struct ControlAuthContext {
pub port_idx: usize,
pub port_network: u16,
pub source_mac: MacAddr,
pub provenance: TransportProvenance,
pub trust: ControlTrust,
pub message_type: NetworkMessageType,
pub vendor_id: Option<u16>,
pub source_net: Option<u16>,
pub dest_net: Option<u16>,
pub target_nets: Vec<u16>,
pub targets_omitted: bool,
}Expand description
Immutable admission facts for one protected control. Claims only.
Fields§
§port_idx: usizeIndex of the router port the control arrived on.
port_network: u16Network number of that port.
source_mac: MacAddrData-link source address of the sending node.
provenance: TransportProvenanceHow the transport learned of the frame’s origin (direct peer, hub, relayed).
trust: ControlTrustChannel-level trust derived from provenance; says nothing about the leaf sender’s
identity.
message_type: NetworkMessageTypeThe control’s network-layer message type, as received.
vendor_id: Option<u16>Vendor ID from a proprietary network message, if present.
source_net: Option<u16>Source network number claimed in the NPDU, if any.
dest_net: Option<u16>Destination network number claimed in the NPDU, if any.
target_nets: Vec<u16>Network numbers the control refers to, after validation.
targets_omitted: boolTrue when the control omitted its network list, meaning every network served via the sender.
Implementations§
Source§impl ControlAuthContext
impl ControlAuthContext
Sourcepub fn sending_peer_principal(&self) -> Option<ScPrincipal>
pub fn sending_peer_principal(&self) -> Option<ScPrincipal>
The verified leaf certificate of the direct BACnet/SC peer that
handed this message to the router: the last hop, even when the message
carries an SNET. None for a hub-relayed message, which every SC
broadcast is, and for any other data link; see the
module documentation for which controls can carry one.