BSL v1.1.1 - 39.g9f43410
AMMOS Bundle Protocol Security Library (BSL)
Loading...
Searching...
No Matches
BSL_PrimaryBlock_t Struct Reference

Contains Bundle Primary Block fields and metadata. More...

#include <bsl/BPSecLib_Public.h>

+ Collaboration diagram for BSL_PrimaryBlock_t:

Data Fields

uint64_t field_version
 CBOR-decoded field of Primary Block BP version.
 
uint64_t field_flags
 CBOR-decoded field of bundle processing control flags.
 
uint64_t field_crc_type
 CBOR-decoded field of Primary Block CRC type.
 
const BSL_HostEID_tfield_dest_eid
 Destination in host BPA's internal representation of an EID.
 
const BSL_HostEID_tfield_src_node_id
 Source in host BPA's internal representation of an EID.
 
const BSL_HostEID_tfield_report_to_eid
 Report-to EID in host BPA's internal representation of an EID.
 
uint64_t field_bundle_creation_time
 CBOR-decoded bundle creation time.
 
uint64_t field_seq_num
 CBOR-decoded sequence number.
 
uint64_t field_lifetime
 CBOR-decoded lifetime.
 
uint64_t field_frag_offset
 CBOR-decoded fragment offset (warning, may not be implemented yet).
 
uint64_t field_adu_length
 CBOR-decoded field of ADU length.
 
size_t block_count
 Helpful count of total canonical blocks in bundle, not a field of the header.
 
uint64_t * block_numbers
 Array of size block_count containing canonical block numbers in the same order in which they appear in the bundle.
 
const BSL_Data_tencoded
 The encoded form of the primary block as contiguous data.
 

Detailed Description

Contains Bundle Primary Block fields and metadata.

State is set by calls to BSL_BundleCtx_GetBundleMetadata(). Instances are initialized with BSL_PrimaryBlock_Init() and de-initialized with BSL_PrimaryBlock_deinit().

Field Documentation

◆ block_count

size_t BSL_PrimaryBlock_t::block_count

◆ block_numbers

uint64_t* BSL_PrimaryBlock_t::block_numbers

Array of size block_count containing canonical block numbers in the same order in which they appear in the bundle.

Note
This array is copied at the time the struct is requested.

Referenced by BSL_API_QuerySecurity(), BSL_PrimaryBlock_deinit(), get_target_block_id(), and MockBPA_GetBundleMetadata().

◆ encoded

const BSL_Data_t* BSL_PrimaryBlock_t::encoded

The encoded form of the primary block as contiguous data.

This is a reference to an external value immutable during the lifetime of the bundle.

Referenced by BSLX_BCB_ComputeAAD(), BSLX_BIB_GenIPPT(), and MockBPA_GetBundleMetadata().

◆ field_adu_length

uint64_t BSL_PrimaryBlock_t::field_adu_length

CBOR-decoded field of ADU length.

Referenced by MockBPA_GetBundleMetadata().

◆ field_bundle_creation_time

uint64_t BSL_PrimaryBlock_t::field_bundle_creation_time

CBOR-decoded bundle creation time.

Referenced by MockBPA_GetBundleMetadata().

◆ field_crc_type

uint64_t BSL_PrimaryBlock_t::field_crc_type

CBOR-decoded field of Primary Block CRC type.

Referenced by MockBPA_GetBundleMetadata().

◆ field_dest_eid

const BSL_HostEID_t* BSL_PrimaryBlock_t::field_dest_eid

Destination in host BPA's internal representation of an EID.

This is a reference to an external value immutable during the lifetime of the bundle.

Referenced by BSL_TestUtils_ModifyEIDs(), BSLP_PolicyRule_EvaluateAsSecOper(), BSLP_QueryPolicy(), and MockBPA_GetBundleMetadata().

◆ field_flags

uint64_t BSL_PrimaryBlock_t::field_flags

CBOR-decoded field of bundle processing control flags.

Referenced by MockBPA_GetBundleMetadata().

◆ field_frag_offset

uint64_t BSL_PrimaryBlock_t::field_frag_offset

CBOR-decoded fragment offset (warning, may not be implemented yet).

Referenced by MockBPA_GetBundleMetadata().

◆ field_lifetime

uint64_t BSL_PrimaryBlock_t::field_lifetime

CBOR-decoded lifetime.

Referenced by MockBPA_GetBundleMetadata().

◆ field_report_to_eid

const BSL_HostEID_t* BSL_PrimaryBlock_t::field_report_to_eid

Report-to EID in host BPA's internal representation of an EID.

This is a reference to an external value immutable during the lifetime of the bundle.

Referenced by BSL_TestUtils_ModifyEIDs(), and MockBPA_GetBundleMetadata().

◆ field_seq_num

uint64_t BSL_PrimaryBlock_t::field_seq_num

CBOR-decoded sequence number.

Referenced by MockBPA_GetBundleMetadata().

◆ field_src_node_id

const BSL_HostEID_t* BSL_PrimaryBlock_t::field_src_node_id

Source in host BPA's internal representation of an EID.

This is a reference to an external value immutable during the lifetime of the bundle.

Referenced by BSL_TestUtils_ModifyEIDs(), BSLP_PolicyRule_EvaluateAsSecOper(), BSLP_QueryPolicy(), and MockBPA_GetBundleMetadata().

◆ field_version

uint64_t BSL_PrimaryBlock_t::field_version

CBOR-decoded field of Primary Block BP version.

Referenced by MockBPA_GetBundleMetadata().


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