Type Alias csp_packet_t

Source
pub type csp_packet_t = csp_packet_s;
Expand description

CSP Packet.

This structure is constructed to fit with all interface and protocols to prevent the need to copy data (zero copy).

.. note:: In most cases a CSP packet cannot be reused in case of send failure, because the lower layers may add additional data causing increased length (e.g. CRC32), convert the CSP id to different endian (e.g. I2C), etc.

Aliased Type§

#[repr(C)]
pub struct csp_packet_t { pub packet_info: csp_packet_s_anon_union, pub length: u16, pub id: csp_id_t, pub next: *mut csp_packet_s, pub header: [u8; 8], pub packet_data_union: csp_packet_s_data_union, }

Fields§

§packet_info: csp_packet_s_anon_union§length: u16§id: csp_id_t§next: *mut csp_packet_s§header: [u8; 8]

Additional header bytes, to prepend packed data before transmission This must be minimum 6 bytes to accomodate CSP 2.0. But some implementations require much more scratch working area for encryption for example.

Ultimately after csp_id_pack() this area will be filled with the CSP header

§packet_data_union: csp_packet_s_data_union