BSL v0.0.0
AMMOS Bundle Protocol Security Library (BSL)
Loading...
Searching...
No Matches
BSL_HostDescriptors_t Struct Reference

Dynamic BPA descriptor. More...

#include <BPSecLib_Public.h>

+ Collaboration diagram for BSL_HostDescriptors_t:

Data Fields

void * user_data
 User data pointer for callbacks.
 
int(* get_host_eid_fn )(const void *user_data, BSL_HostEID_t *result)
 Host BPA function to get its current EID.
 
int(* eid_init )(void *user_data, BSL_HostEID_t *result)
 Host BPA function to initialize/allocate an EID type.
 
void(* eid_deinit )(void *user_data, BSL_HostEID_t *eid)
 Host BPA function to deinit/free an EID type.
 
int(* bundle_metadata_fn )(const BSL_BundleRef_t *bundle_ref, BSL_PrimaryBlock_t *result_primary_block)
 Host BPA function to populate a Primary Block struct.
 
int(* bundle_get_block_ids )(const BSL_BundleRef_t *bundle_ref, size_t array_count, uint64_t array_block_ids[array_count], size_t *result_count)
 Host BPA function to populate a pre-allocated array with canonical block IDs.
 
int(* block_metadata_fn )(const BSL_BundleRef_t *bundle_ref, uint64_t block_num, BSL_CanonicalBlock_t *result_block)
 Host BPA function to populate a Canonical Block struct for a given block number.
 
int(* block_create_fn )(BSL_BundleRef_t *bundle_ref, uint64_t block_type_code, uint64_t *result_block_num)
 Host BPA function to create a new canonical block with the given type, returning result in the output pointer.
 
int(* block_remove_fn )(BSL_BundleRef_t *bundle_ref, uint64_t block_num)
 Host BPA function to remove a given canonical block from the bundle.
 
int(* block_realloc_btsd_fn )(BSL_BundleRef_t *bundle_ref, uint64_t block_num, size_t bytesize)
 Host BPA function to reallocate a canonical block's BTSD, keeping existing data in-place.
 
int(* eid_to_cbor )(void *encoder, const BSL_HostEID_t *eid)
 Host BPA function to encode an EID to CBOR.
 
int(* eid_from_cbor )(void *encoder, BSL_HostEID_t *eid)
 Host BPA function to decode an EID from a CBOR context.
 
int(* eid_from_text )(BSL_HostEID_t *eid, const char *text, void *user_data)
 Host BPA function to parse an EID from a C-string.
 
int(* eidpat_init )(BSL_HostEIDPattern_t *pat, void *user_data)
 Host BPA function to initialize an EID pattern type.
 
void(* eidpat_deinit )(BSL_HostEIDPattern_t *pat, void *user_data)
 Host BPA function to deinit an EID pattern type.
 
int(* eidpat_from_text )(BSL_HostEIDPattern_t *pat, const char *text, void *user_data)
 Host BPA function to parse an EID pattern from a C-string.
 
bool(* eidpat_match )(const BSL_HostEIDPattern_t *pat, const BSL_HostEID_t *eid, void *user_data)
 Host BPA function that returns true if the given EID matched an EID pattern.
 

Detailed Description

Dynamic BPA descriptor.

Definition at line 157 of file BPSecLib_Public.h.

Field Documentation

◆ block_create_fn

int(* BSL_HostDescriptors_t::block_create_fn) (BSL_BundleRef_t *bundle_ref, uint64_t block_type_code, uint64_t *result_block_num)

Host BPA function to create a new canonical block with the given type, returning result in the output pointer.

Definition at line 183 of file BPSecLib_Public.h.

Referenced by BSL_BundleCtx_CreateBlock(), and BSL_HostDescriptors_Set().

◆ block_metadata_fn

int(* BSL_HostDescriptors_t::block_metadata_fn) (const BSL_BundleRef_t *bundle_ref, uint64_t block_num, BSL_CanonicalBlock_t *result_block)

Host BPA function to populate a Canonical Block struct for a given block number.

Definition at line 179 of file BPSecLib_Public.h.

Referenced by BSL_BundleCtx_GetBlockMetadata(), and BSL_HostDescriptors_Set().

◆ block_realloc_btsd_fn

int(* BSL_HostDescriptors_t::block_realloc_btsd_fn) (BSL_BundleRef_t *bundle_ref, uint64_t block_num, size_t bytesize)

Host BPA function to reallocate a canonical block's BTSD, keeping existing data in-place.

Definition at line 189 of file BPSecLib_Public.h.

Referenced by BSL_BundleCtx_ReallocBTSD(), and BSL_HostDescriptors_Set().

◆ block_remove_fn

int(* BSL_HostDescriptors_t::block_remove_fn) (BSL_BundleRef_t *bundle_ref, uint64_t block_num)

Host BPA function to remove a given canonical block from the bundle.

Definition at line 186 of file BPSecLib_Public.h.

Referenced by BSL_BundleCtx_ReallocBTSD(), BSL_BundleCtx_RemoveBlock(), and BSL_HostDescriptors_Set().

◆ bundle_get_block_ids

int(* BSL_HostDescriptors_t::bundle_get_block_ids) (const BSL_BundleRef_t *bundle_ref, size_t array_count, uint64_t array_block_ids[array_count], size_t *result_count)

Host BPA function to populate a pre-allocated array with canonical block IDs.

Definition at line 175 of file BPSecLib_Public.h.

Referenced by BSL_BundleCtx_GetBlockIds(), and BSL_HostDescriptors_Set().

◆ bundle_metadata_fn

int(* BSL_HostDescriptors_t::bundle_metadata_fn) (const BSL_BundleRef_t *bundle_ref, BSL_PrimaryBlock_t *result_primary_block)

Host BPA function to populate a Primary Block struct.

Definition at line 172 of file BPSecLib_Public.h.

Referenced by BSL_BundleCtx_GetBundleMetadata(), and BSL_HostDescriptors_Set().

◆ eid_deinit

void(* BSL_HostDescriptors_t::eid_deinit) (void *user_data, BSL_HostEID_t *eid)

Host BPA function to deinit/free an EID type.

Definition at line 169 of file BPSecLib_Public.h.

Referenced by BSL_HostDescriptors_Set(), and BSL_HostEID_Deinit().

◆ eid_from_cbor

int(* BSL_HostDescriptors_t::eid_from_cbor) (void *encoder, BSL_HostEID_t *eid)

Host BPA function to decode an EID from a CBOR context.

Definition at line 195 of file BPSecLib_Public.h.

Referenced by BSL_HostDescriptors_Set(), and BSL_HostEID_DecodeFromCBOR().

◆ eid_from_text

int(* BSL_HostDescriptors_t::eid_from_text) (BSL_HostEID_t *eid, const char *text, void *user_data)

Host BPA function to parse an EID from a C-string.

Definition at line 198 of file BPSecLib_Public.h.

Referenced by BSL_HostDescriptors_Set(), and BSL_HostEID_DecodeFromText().

◆ eid_init

int(* BSL_HostDescriptors_t::eid_init) (void *user_data, BSL_HostEID_t *result)

Host BPA function to initialize/allocate an EID type.

Definition at line 166 of file BPSecLib_Public.h.

Referenced by BSL_HostDescriptors_Set(), and BSL_HostEID_Init().

◆ eid_to_cbor

int(* BSL_HostDescriptors_t::eid_to_cbor) (void *encoder, const BSL_HostEID_t *eid)

Host BPA function to encode an EID to CBOR.

Definition at line 192 of file BPSecLib_Public.h.

Referenced by BSL_HostEID_EncodeToCBOR().

◆ eidpat_deinit

void(* BSL_HostDescriptors_t::eidpat_deinit) (BSL_HostEIDPattern_t *pat, void *user_data)

Host BPA function to deinit an EID pattern type.

Definition at line 204 of file BPSecLib_Public.h.

Referenced by BSL_HostDescriptors_Set(), and BSL_HostEIDPattern_Deinit().

◆ eidpat_from_text

int(* BSL_HostDescriptors_t::eidpat_from_text) (BSL_HostEIDPattern_t *pat, const char *text, void *user_data)

Host BPA function to parse an EID pattern from a C-string.

Definition at line 207 of file BPSecLib_Public.h.

Referenced by BSL_HostDescriptors_Set(), and BSL_HostEIDPattern_DecodeFromText().

◆ eidpat_init

int(* BSL_HostDescriptors_t::eidpat_init) (BSL_HostEIDPattern_t *pat, void *user_data)

Host BPA function to initialize an EID pattern type.

Definition at line 201 of file BPSecLib_Public.h.

Referenced by BSL_HostDescriptors_Set(), and BSL_HostEIDPattern_Init().

◆ eidpat_match

bool(* BSL_HostDescriptors_t::eidpat_match) (const BSL_HostEIDPattern_t *pat, const BSL_HostEID_t *eid, void *user_data)

Host BPA function that returns true if the given EID matched an EID pattern.

Definition at line 210 of file BPSecLib_Public.h.

Referenced by BSL_HostDescriptors_Set(), and BSL_HostEIDPattern_IsMatch().

◆ get_host_eid_fn

int(* BSL_HostDescriptors_t::get_host_eid_fn) (const void *user_data, BSL_HostEID_t *result)

Host BPA function to get its current EID.

Definition at line 163 of file BPSecLib_Public.h.

Referenced by BSL_Host_GetSecSrcEID(), and BSL_HostDescriptors_Set().

◆ user_data


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