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

Caller-owned storage for one sapi_safechannel_t instance. Every field is private - reach it only through the functions below. No dynamic allocation (REQ-SAFECHANNEL-002): sized to hold up to SAPI_SAFECHANNEL_MAX_LINKS opened netlink links plus whichever of sapi_dual_channel_t/sapi_channel_t is in use. More...

#include <sapi_safechannel.h>

Data Structures

union  [union].impl

Data Fields

sapi_safechannel_type_t type
bool is_open
sapi_netlink_storage_t links [SAPI_SAFECHANNEL_MAX_LINKS]
sapi_netlink_handle_t link_handles [SAPI_SAFECHANNEL_MAX_LINKS]
uint32_t link_count
union  impl

Detailed Description

Caller-owned storage for one sapi_safechannel_t instance. Every field is private - reach it only through the functions below. No dynamic allocation (REQ-SAFECHANNEL-002): sized to hold up to SAPI_SAFECHANNEL_MAX_LINKS opened netlink links plus whichever of sapi_dual_channel_t/sapi_channel_t is in use.

Definition at line 160 of file sapi_safechannel.h.

Field Documentation

◆ type

sapi_safechannel_type_t sapi_safechannel_t::type

Definition at line 162 of file sapi_safechannel.h.

◆ is_open

bool sapi_safechannel_t::is_open

Definition at line 163 of file sapi_safechannel.h.

◆ links

sapi_netlink_storage_t sapi_safechannel_t::links[SAPI_SAFECHANNEL_MAX_LINKS]

Endpoints opened by this instance; ownership (closing them) stays with this module, not the caller (unlike sapi_dual_channel_t, which takes already-opened handles it does not own).

Definition at line 168 of file sapi_safechannel.h.

◆ link_handles

sapi_netlink_handle_t sapi_safechannel_t::link_handles[SAPI_SAFECHANNEL_MAX_LINKS]

Definition at line 169 of file sapi_safechannel.h.

◆ link_count

uint32_t sapi_safechannel_t::link_count

Definition at line 170 of file sapi_safechannel.h.


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