Struct capsules::ieee802154::framer::FrameInfo
[−]
[src]
struct FrameInfo {
frame_type: FrameType,
mac_payload_offset: usize,
data_offset: usize,
data_len: usize,
mic_len: usize,
security_params: Option<(SecurityLevel, [u8; 16], [u8; 13])>,
}This contains just enough information about a frame to determine
- How to encode it once its payload has been finalized
- The sizes of the mac header, payload and MIC tag length to be added
These offsets are relative to the PSDU or buf[radio::PSDU_OFFSET..] so
that the mac frame length is data_offset + data_len
Fields
frame_type: FrameType
mac_payload_offset: usize
data_offset: usize
data_len: usize
mic_len: usize
security_params: Option<(SecurityLevel, [u8; 16], [u8; 13])>
Methods
impl FrameInfo[src]
fn unsecured_length(&self) -> usize[src]
Current size of the frame, not including the MAC footer or the MIC
fn secured_length(&self) -> usize[src]
Current size of the frame, not including the MAC footer but including the MIC
fn ccm_encrypt_ranges(&self) -> (usize, usize)[src]
Compute the offsets in the buffer for the a data and m data fields in the CCM* authentication and encryption procedures which depends on the frame type and security levels. Returns the (offset, len) of the m data fields, not including the MIC. The a data is always the remaining prefix of the header, so it can be determined implicitly.
Trait Implementations
impl Copy for FrameInfo[src]
impl Clone for FrameInfo[src]
fn clone(&self) -> FrameInfo[src]
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)1.0.0[src]
Performs copy-assignment from source. Read more
impl Eq for FrameInfo[src]
fn assert_receiver_is_total_eq(&self)[src]
impl PartialEq for FrameInfo[src]
fn eq(&self, __arg_0: &FrameInfo) -> bool[src]
This method tests for self and other values to be equal, and is used by ==. Read more
fn ne(&self, __arg_0: &FrameInfo) -> bool[src]
This method tests for !=.