28#ifndef BSL_MOCK_BPA_EIDPAT_H_
29#define BSL_MOCK_BPA_EIDPAT_H_
55#define M_OPL_bsl_eidpat_numrange_seg_t() M_OPEXTEND(M_POD_OPLIST, CMP(API_6(bsl_eidpat_numrange_seg_cmp)))
93int bsl_eidpat_numcomp_from_text(
bsl_eidpat_numcomp_t *obj,
const char *curs,
const char **endptr);
129#define M_OPL_bsl_mock_eidpat_item_t() \
130 (INIT(API_2(bsl_mock_eidpat_item_init)), CLEAR(API_2(bsl_mock_eidpat_item_deinit)))
Single entry-point include file for all of the BPSec Lib (BSL) frontend API.
Declarations for EID handling.
void mock_bpa_eidpat_deinit(BSL_HostEIDPattern_t *pat, void *user_data)
Interface for BSL_HostDescriptors_t::eidpat_deinit.
bsl_eidpat_numcomp_form_t
The component type for a numeric tuple pattern.
@ BSL_EIDPAT_NUMCOMP_RANGE
A multi-segment range of values.
@ BSL_EIDPAT_NUMCOMP_SINGLE
A single numeric value.
@ BSL_EIDPAT_NUMCOMP_WILDCARD
This form has no associated value.
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.
int mock_bpa_eidpat_from_text(BSL_HostEIDPattern_t *pat, const char *text, void *user_data)
Interface for BSL_HostDescriptors_t::eidpat_from_text.
int mock_bpa_eidpat_init(BSL_HostEIDPattern_t *pat, void *user_data)
Interface for BSL_HostDescriptors_t::eidpat_init.
Reference to a EID pattern owned and stored in the BPA.
Opaque pointer to BPA-specific Endpoint ID storage.
Scheme-specific part for IPN scheme.
Scheme-specific part for IPN scheme.
Each component of a numeric tuple pattern.
bsl_eidpat_numcomp_form_t form
The form of the component val.
bsl_eidpat_numrage_t as_range
Used for BSL_EIDPAT_NUMCOMP_RANGE.
uint64_t as_single
Used for BSL_EIDPAT_NUMCOMP_SINGLE.
An ordered set of range segments with fast lookup.
A single numeric range segment pair.
uint64_t last
The last value in this segment, also used to sort segments.
uint64_t first
The first value in this segment.
Struct to be used as a BSL_HostEID_t::handle.
One item of an EID Pattern.
bool any_ssp
True if this is a match-any-SSP item.
uint64_t scheme
Code point for EID schemes from .
bsl_eidpat_ipn_ssp_t as_ipn
Used when scheme is BSL_MOCK_EID_IPN.
Struct to be used as a BSL_HostEIDPattern_t::handle.
bsl_mock_eidpat_item_list_t items
The list of pattern items, or an empty list to indicate the any-scheme pattern.