FD.io VPP  v18.01.2-1-g9b554f3
Vector Packet Processing
bier_hdr_inlines.h File Reference
+ Include dependency graph for bier_hdr_inlines.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define BIER_HDR_1ST_NIBBLE_MASK   0xf0000000
 The BIER inline functions acting on the bier header. More...
 
#define BIER_HDR_VERSION_FIELD_MASK   0x0f000000
 
#define BIER_HDR_LEN_FIELD_MASK   0x00f00000
 
#define BIER_HDR_ENTROPY_FIELD_MASK   0x000fffff
 
#define BIER_HDR_1ST_NIBBLE_SHIFT   28
 
#define BIER_HDR_VERSION_FIELD_SHIFT   24
 
#define BIER_HDR_LEN_FIELD_SHIFT   20
 
#define BIER_HDR_ENTROPY_FIELD_SHIFT   0
 
#define BIER_HDR_1ST_NIBBLE_VALUE   0x5
 
#define BIER_HDR_PROTO_FIELD_MASK   0x003f
 Mask and shift values for fields in the headers trainling word. More...
 
#define BIER_HDR_OAM_FIELD_MASK   0xc000
 
#define BIER_HDR_DSCP_FIELD_MASK   0x0fc0
 
#define BIER_HDR_DSCP_FIELD_SHIFT   6
 
#define BIER_HDR_PROTO_FIELD_SHIFT   0
 
#define BIER_HDR_OAM_FIELD_SHIFT   14
 
#define BIER_HDR_FIRST_WORD(version, len, entropy)
 

Functions

static bier_hdr_version_t bier_hdr_get_version (const bier_hdr_t *bier_hdr)
 
static bier_hdr_len_id_t bier_hdr_get_len_id (const bier_hdr_t *bier_hdr)
 
static bier_hdr_entropy_t bier_hdr_get_entropy (const bier_hdr_t *bier_hdr)
 
static void bier_hdr_1st_nibble (bier_hdr_t *hdr)
 
static u8 bier_hdr_get_1st_nibble (bier_hdr_t *hdr)
 
static void bier_hdr_set_version (bier_hdr_t *hdr, bier_hdr_version_t version)
 
static void bier_hdr_set_len_id (bier_hdr_t *hdr, bier_hdr_len_id_t len)
 
static void bier_hdr_set_entropy (bier_hdr_t *hdr, bier_hdr_entropy_t entropy)
 
static void bier_hdr_ntoh (bier_hdr_t *bier_hdr)
 
static void bier_hdr_hton (bier_hdr_t *bier_hdr)
 
static bier_hdr_src_id_t bier_hdr_get_src_id (const bier_hdr_t *bier_hdr)
 
static void bier_hdr_set_src_id (bier_hdr_t *bier_hdr, bier_hdr_src_id_t src_id)
 
static void bier_hdr_set_proto_id (bier_hdr_t *bier_hdr, bier_hdr_proto_id_t proto)
 
static bier_hdr_proto_id_t bier_hdr_get_proto_id (const bier_hdr_t *bier_hdr)
 
static void bier_hdr_clear (bier_hdr_t *bier_hdr)
 
static void bier_hdr_init (bier_hdr_t *bier_hdr, bier_hdr_version_t version, bier_hdr_proto_id_t proto, bier_hdr_len_id_t len, bier_hdr_entropy_t entropy, bier_bp_t src)
 
static size_t bier_hdr_str_num_bytes (const bier_hdr_t *bier_hdr)
 
static size_t bier_hdr_num_bytes (const bier_hdr_t *bier_hdr)
 
static void bier_bit_string_init_from_hdr (bier_hdr_t *bier_hdr, bier_bit_string_t *bit_string)
 

Macro Definition Documentation

#define BIER_HDR_1ST_NIBBLE_MASK   0xf0000000

The BIER inline functions acting on the bier header.

Mask and shift values for the fields incorporated into the header's first word

Definition at line 33 of file bier_hdr_inlines.h.

#define BIER_HDR_1ST_NIBBLE_SHIFT   28

Definition at line 38 of file bier_hdr_inlines.h.

#define BIER_HDR_1ST_NIBBLE_VALUE   0x5

Definition at line 43 of file bier_hdr_inlines.h.

#define BIER_HDR_DSCP_FIELD_MASK   0x0fc0

Definition at line 50 of file bier_hdr_inlines.h.

#define BIER_HDR_DSCP_FIELD_SHIFT   6

Definition at line 51 of file bier_hdr_inlines.h.

#define BIER_HDR_ENTROPY_FIELD_MASK   0x000fffff

Definition at line 36 of file bier_hdr_inlines.h.

#define BIER_HDR_ENTROPY_FIELD_SHIFT   0

Definition at line 41 of file bier_hdr_inlines.h.

#define BIER_HDR_FIRST_WORD (   version,
  len,
  entropy 
)
Value:
#define BIER_HDR_ENTROPY_FIELD_MASK
#define BIER_HDR_ENTROPY_FIELD_SHIFT
#define BIER_HDR_VERSION_FIELD_SHIFT
#define BIER_HDR_1ST_NIBBLE_VALUE
#define BIER_HDR_LEN_FIELD_SHIFT
#define BIER_HDR_1ST_NIBBLE_SHIFT

Definition at line 119 of file bier_hdr_inlines.h.

#define BIER_HDR_LEN_FIELD_MASK   0x00f00000

Definition at line 35 of file bier_hdr_inlines.h.

#define BIER_HDR_LEN_FIELD_SHIFT   20

Definition at line 40 of file bier_hdr_inlines.h.

#define BIER_HDR_OAM_FIELD_MASK   0xc000

Definition at line 49 of file bier_hdr_inlines.h.

#define BIER_HDR_OAM_FIELD_SHIFT   14

Definition at line 53 of file bier_hdr_inlines.h.

#define BIER_HDR_PROTO_FIELD_MASK   0x003f

Mask and shift values for fields in the headers trainling word.

Definition at line 48 of file bier_hdr_inlines.h.

#define BIER_HDR_PROTO_FIELD_SHIFT   0

Definition at line 52 of file bier_hdr_inlines.h.

#define BIER_HDR_VERSION_FIELD_MASK   0x0f000000

Definition at line 34 of file bier_hdr_inlines.h.

#define BIER_HDR_VERSION_FIELD_SHIFT   24

Definition at line 39 of file bier_hdr_inlines.h.

Function Documentation

static void bier_bit_string_init_from_hdr ( bier_hdr_t bier_hdr,
bier_bit_string_t bit_string 
)
inlinestatic

Definition at line 210 of file bier_hdr_inlines.h.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void bier_hdr_1st_nibble ( bier_hdr_t hdr)
inlinestatic

Definition at line 80 of file bier_hdr_inlines.h.

+ Here is the caller graph for this function:

static void bier_hdr_clear ( bier_hdr_t bier_hdr)
inlinestatic

Definition at line 171 of file bier_hdr_inlines.h.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static u8 bier_hdr_get_1st_nibble ( bier_hdr_t hdr)
inlinestatic

Definition at line 88 of file bier_hdr_inlines.h.

+ Here is the caller graph for this function:

static bier_hdr_entropy_t bier_hdr_get_entropy ( const bier_hdr_t bier_hdr)
inlinestatic

Definition at line 72 of file bier_hdr_inlines.h.

+ Here is the caller graph for this function:

static bier_hdr_len_id_t bier_hdr_get_len_id ( const bier_hdr_t bier_hdr)
inlinestatic

Definition at line 64 of file bier_hdr_inlines.h.

+ Here is the caller graph for this function:

static bier_hdr_proto_id_t bier_hdr_get_proto_id ( const bier_hdr_t bier_hdr)
inlinestatic

Definition at line 164 of file bier_hdr_inlines.h.

+ Here is the caller graph for this function:

static bier_hdr_src_id_t bier_hdr_get_src_id ( const bier_hdr_t bier_hdr)
inlinestatic

Definition at line 144 of file bier_hdr_inlines.h.

+ Here is the caller graph for this function:

static bier_hdr_version_t bier_hdr_get_version ( const bier_hdr_t bier_hdr)
inlinestatic

Definition at line 56 of file bier_hdr_inlines.h.

+ Here is the caller graph for this function:

static void bier_hdr_hton ( bier_hdr_t bier_hdr)
inlinestatic

Definition at line 136 of file bier_hdr_inlines.h.

+ Here is the caller graph for this function:

static void bier_hdr_init ( bier_hdr_t bier_hdr,
bier_hdr_version_t  version,
bier_hdr_proto_id_t  proto,
bier_hdr_len_id_t  len,
bier_hdr_entropy_t  entropy,
bier_bp_t  src 
)
inlinestatic

Definition at line 179 of file bier_hdr_inlines.h.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void bier_hdr_ntoh ( bier_hdr_t bier_hdr)
inlinestatic

Definition at line 128 of file bier_hdr_inlines.h.

+ Here is the caller graph for this function:

static size_t bier_hdr_num_bytes ( const bier_hdr_t bier_hdr)
inlinestatic

Definition at line 203 of file bier_hdr_inlines.h.

+ Here is the call graph for this function:

static void bier_hdr_set_entropy ( bier_hdr_t hdr,
bier_hdr_entropy_t  entropy 
)
inlinestatic

Definition at line 111 of file bier_hdr_inlines.h.

+ Here is the caller graph for this function:

static void bier_hdr_set_len_id ( bier_hdr_t hdr,
bier_hdr_len_id_t  len 
)
inlinestatic

Definition at line 103 of file bier_hdr_inlines.h.

+ Here is the caller graph for this function:

static void bier_hdr_set_proto_id ( bier_hdr_t bier_hdr,
bier_hdr_proto_id_t  proto 
)
inlinestatic

Definition at line 156 of file bier_hdr_inlines.h.

+ Here is the caller graph for this function:

static void bier_hdr_set_src_id ( bier_hdr_t bier_hdr,
bier_hdr_src_id_t  src_id 
)
inlinestatic

Definition at line 150 of file bier_hdr_inlines.h.

+ Here is the caller graph for this function:

static void bier_hdr_set_version ( bier_hdr_t hdr,
bier_hdr_version_t  version 
)
inlinestatic

Definition at line 95 of file bier_hdr_inlines.h.

+ Here is the caller graph for this function:

static size_t bier_hdr_str_num_bytes ( const bier_hdr_t bier_hdr)
inlinestatic

Definition at line 196 of file bier_hdr_inlines.h.

+ Here is the call graph for this function:

+ Here is the caller graph for this function: