Safe API Framework
Layered API framework for safety-related applications (ERTMS RBC reference targeting CENELEC EN 50128 SIL 4)
Loading...
Searching...
No Matches
sapi_dual_msgchannel_t Struct Reference

One sapi_dual_msgchannel_t instance's state. Caller-owned storage (REQ-DUAL-MSGCHANNEL-001); opaque in practice, exposed here (not via SAFEAPI_DECLARE_STORAGE) only because its size is already small and fixed - callers must still treat every field as private and only reach it through the functions below. More...

#include <sapi_dual_msgchannel.h>

Data Fields

sapi_netlink_handle_t link
uint32_t sender_id
uint32_t expected_peer_id
uint32_t next_sequence
uint32_t expected_sequence

Detailed Description

One sapi_dual_msgchannel_t instance's state. Caller-owned storage (REQ-DUAL-MSGCHANNEL-001); opaque in practice, exposed here (not via SAFEAPI_DECLARE_STORAGE) only because its size is already small and fixed - callers must still treat every field as private and only reach it through the functions below.

Definition at line 67 of file sapi_dual_msgchannel.h.

Field Documentation

◆ link

sapi_netlink_handle_t sapi_dual_msgchannel_t::link

Caller-opened; NOT closed by sapi_dual_msgchannel_close().

Definition at line 69 of file sapi_dual_msgchannel.h.

◆ sender_id

uint32_t sapi_dual_msgchannel_t::sender_id

This instance's own EN 50159 sender_id, stamped on every outbound frame.

Definition at line 70 of file sapi_dual_msgchannel.h.

◆ expected_peer_id

uint32_t sapi_dual_msgchannel_t::expected_peer_id

Inbound frames whose sender_id differs are rejected (masquerade defense).

Definition at line 71 of file sapi_dual_msgchannel.h.

◆ next_sequence

uint32_t sapi_dual_msgchannel_t::next_sequence

Next outbound sequence_number.

Definition at line 72 of file sapi_dual_msgchannel.h.

◆ expected_sequence

uint32_t sapi_dual_msgchannel_t::expected_sequence

Next expected inbound sequence_number (continuity check).

Definition at line 73 of file sapi_dual_msgchannel.h.


The documentation for this struct was generated from the following file: