BSL v0.0.0
AMMOS Bundle Protocol Security Library (BSL)
|
Declarations for EID Pattern handling. More...
#include <inttypes.h>
#include <m-bptree.h>
#include <m-deque.h>
#include <BPSecLib_Private.h>
#include "bsl_mock_bpa_eid.h"
Go to the source code of this file.
Data Structures | |
struct | bsl_eidpat_numrange_seg_t |
A single numeric range segment pair. More... | |
struct | bsl_eidpat_numcomp_t |
Each component of a numeric tuple pattern. More... | |
struct | bsl_eidpat_ipn_ssp_t |
Scheme-specific part for IPN scheme. More... | |
struct | bsl_mock_eidpat_item_t |
One item of an EID Pattern. More... | |
struct | bsl_mock_eidpat_t |
Struct to be used as a BSL_HostEIDPattern_t::handle. More... | |
Macros | |
#define | M_OPL_bsl_eidpat_numrange_seg_t() M_OPEXTEND(M_POD_OPLIST, CMP(API_6(bsl_eidpat_numrange_seg_cmp))) |
#define | M_OPL_bsl_mock_eidpat_item_t() (INIT(API_2(bsl_mock_eidpat_item_init)), CLEAR(API_2(bsl_mock_eidpat_item_deinit))) |
Enumerations | |
enum | bsl_eidpat_numcomp_form_t { BSL_EIDPAT_NUMCOMP_SINGLE , BSL_EIDPAT_NUMCOMP_RANGE , BSL_EIDPAT_NUMCOMP_WILDCARD } |
The component type for a numeric tuple pattern. More... | |
Declarations for EID Pattern handling.
These are based on draft-sipos-dtn-eid-pattern [10].
Definition in file bsl_mock_bpa_eidpat.h.
#define M_OPL_bsl_eidpat_numrange_seg_t | ( | ) | M_OPEXTEND(M_POD_OPLIST, CMP(API_6(bsl_eidpat_numrange_seg_cmp))) |
Definition at line 55 of file bsl_mock_bpa_eidpat.h.
#define M_OPL_bsl_mock_eidpat_item_t | ( | ) | (INIT(API_2(bsl_mock_eidpat_item_init)), CLEAR(API_2(bsl_mock_eidpat_item_deinit))) |
Definition at line 129 of file bsl_mock_bpa_eidpat.h.
The component type for a numeric tuple pattern.
Enumerator | |
---|---|
BSL_EIDPAT_NUMCOMP_SINGLE | A single numeric value. |
BSL_EIDPAT_NUMCOMP_RANGE | A multi-segment range of values. |
BSL_EIDPAT_NUMCOMP_WILDCARD | This form has no associated value. |
Definition at line 65 of file bsl_mock_bpa_eidpat.h.
void bsl_eidpat_ipn_ssp_deinit | ( | bsl_eidpat_ipn_ssp_t * | obj | ) |
Definition at line 241 of file bsl_mock_bpa_eidpat.c.
void bsl_eidpat_ipn_ssp_init | ( | bsl_eidpat_ipn_ssp_t * | obj | ) |
Definition at line 234 of file bsl_mock_bpa_eidpat.c.
bool bsl_eidpat_ipn_ssp_match | ( | const bsl_eidpat_ipn_ssp_t * | pat, |
const bsl_eid_ipn_ssp_t * | val | ||
) |
Definition at line 248 of file bsl_mock_bpa_eidpat.c.
void bsl_eidpat_numcomp_deinit | ( | bsl_eidpat_numcomp_t * | obj | ) |
Definition at line 62 of file bsl_mock_bpa_eidpat.c.
int bsl_eidpat_numcomp_from_text | ( | bsl_eidpat_numcomp_t * | obj, |
const char * | curs, | ||
const char ** | endptr | ||
) |
Definition at line 103 of file bsl_mock_bpa_eidpat.c.
void bsl_eidpat_numcomp_init | ( | bsl_eidpat_numcomp_t * | obj | ) |
Definition at line 57 of file bsl_mock_bpa_eidpat.c.
bool bsl_eidpat_numcomp_match | ( | const bsl_eidpat_numcomp_t * | obj, |
uint64_t | val | ||
) |
Definition at line 205 of file bsl_mock_bpa_eidpat.c.
void bsl_eidpat_numcomp_set_form | ( | bsl_eidpat_numcomp_t * | obj, |
bsl_eidpat_numcomp_form_t | form | ||
) |
Definition at line 71 of file bsl_mock_bpa_eidpat.c.
int bsl_eidpat_numrange_seg_cmp | ( | const bsl_eidpat_numrange_seg_t * | left, |
const bsl_eidpat_numrange_seg_t * | right | ||
) |
Definition at line 26 of file bsl_mock_bpa_eidpat.c.
bool bsl_eidpat_numrange_seg_overlap | ( | const bsl_eidpat_numrange_seg_t * | left, |
const bsl_eidpat_numrange_seg_t * | right | ||
) |
Definition at line 44 of file bsl_mock_bpa_eidpat.c.
void bsl_mock_eidpat_item_deinit | ( | bsl_mock_eidpat_item_t * | obj | ) |
Definition at line 261 of file bsl_mock_bpa_eidpat.c.
int bsl_mock_eidpat_item_init | ( | bsl_mock_eidpat_item_t * | obj | ) |
Definition at line 255 of file bsl_mock_bpa_eidpat.c.
void mock_bpa_eidpat_deinit | ( | BSL_HostEIDPattern_t * | pat, |
void * | user_data | ||
) |
Interface for BSL_HostDescriptors_t::eidpat_deinit.
Definition at line 396 of file bsl_mock_bpa_eidpat.c.
References CHKVOID, and BSL_HostEIDPattern_s::handle.
int mock_bpa_eidpat_from_text | ( | BSL_HostEIDPattern_t * | pat, |
const char * | text, | ||
void * | user_data | ||
) |
Interface for BSL_HostDescriptors_t::eidpat_from_text.
Definition at line 407 of file bsl_mock_bpa_eidpat.c.
References CHKERR1, BSL_HostEIDPattern_s::handle, and bsl_mock_eidpat_t::items.
int mock_bpa_eidpat_init | ( | BSL_HostEIDPattern_t * | pat, |
void * | user_data | ||
) |
Interface for BSL_HostDescriptors_t::eidpat_init.
Definition at line 372 of file bsl_mock_bpa_eidpat.c.
References CHKERR1, BSL_HostEIDPattern_s::handle, and bsl_mock_eidpat_t::items.
int mock_bpa_eidpat_item_from_text | ( | bsl_mock_eidpat_item_t * | item, |
const char * | text, | ||
const char ** | endptr | ||
) |
Definition at line 274 of file bsl_mock_bpa_eidpat.c.
bool mock_bpa_eidpat_item_match | ( | const bsl_mock_eidpat_item_t * | item, |
const bsl_mock_eid_t * | eid | ||
) |
Definition at line 350 of file bsl_mock_bpa_eidpat.c.
bool mock_bpa_eidpat_match | ( | const BSL_HostEIDPattern_t * | pat, |
const BSL_HostEID_t * | eid, | ||
void * | user_data | ||
) |
Interface for BSL_HostDescriptors_t::eidpat_match.
Definition at line 454 of file bsl_mock_bpa_eidpat.c.
References CHKERR1, BSL_HostEID_s::handle, BSL_HostEIDPattern_s::handle, and bsl_mock_eidpat_t::items.