FD.io VPP  v21.01.1
Vector Packet Processing
gbp_endpoint_group.h File Reference
+ Include dependency graph for gbp_endpoint_group.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  gbp_endpoint_retention_t_
 Endpoint Retnetion Policy. More...
 
struct  gpb_endpoint_group_t_
 An Endpoint Group representation. More...
 
struct  gbp_endpoint_group_db_t_
 EPG DB, key'd on EGP-ID. More...
 

Typedefs

typedef struct gbp_endpoint_retention_t_ gbp_endpoint_retention_t
 Endpoint Retnetion Policy. More...
 
typedef struct gpb_endpoint_group_t_ gbp_endpoint_group_t
 An Endpoint Group representation. More...
 
typedef struct gbp_endpoint_group_db_t_ gbp_endpoint_group_db_t
 EPG DB, key'd on EGP-ID. More...
 
typedef int(* gbp_endpoint_group_cb_t) (gbp_endpoint_group_t *gbpe, void *ctx)
 

Functions

int gbp_endpoint_group_add_and_lock (vnid_t vnid, u16 sclass, u32 bd_id, u32 rd_id, u32 uplink_sw_if_index, const gbp_endpoint_retention_t *retention)
 
index_t gbp_endpoint_group_find (sclass_t sclass)
 
int gbp_endpoint_group_delete (sclass_t sclass)
 
void gbp_endpoint_group_unlock (index_t index)
 
void gbp_endpoint_group_lock (index_t index)
 
u32 gbp_endpoint_group_get_bd_id (const gbp_endpoint_group_t *)
 
gbp_endpoint_group_tgbp_endpoint_group_get (index_t i)
 
index_t gbp_endpoint_group_get_fib_index (const gbp_endpoint_group_t *gg, fib_protocol_t fproto)
 
void gbp_endpoint_group_walk (gbp_endpoint_group_cb_t bgpe, void *ctx)
 
u8format_gbp_endpoint_group (u8 *s, va_list *args)
 
static u32 gbp_epg_itf_lookup_sclass (sclass_t sclass)
 
static const dpo_id_tgbp_epg_dpo_lookup (sclass_t sclass, fib_protocol_t fproto)
 

Variables

gbp_endpoint_group_db_t gbp_endpoint_group_db
 DP functions and databases. More...
 
gbp_endpoint_group_tgbp_endpoint_group_pool
 Pool of GBP endpoint_groups. More...
 
uwordgbp_epg_sclass_db
 Map sclass to EPG. More...
 

Typedef Documentation

◆ gbp_endpoint_group_cb_t

typedef int(* gbp_endpoint_group_cb_t) (gbp_endpoint_group_t *gbpe, void *ctx)

Definition at line 110 of file gbp_endpoint_group.h.

◆ gbp_endpoint_group_db_t

EPG DB, key'd on EGP-ID.

◆ gbp_endpoint_group_t

An Endpoint Group representation.

◆ gbp_endpoint_retention_t

Endpoint Retnetion Policy.

Function Documentation

◆ format_gbp_endpoint_group()

u8* format_gbp_endpoint_group ( u8 s,
va_list *  args 
)

Definition at line 329 of file gbp_endpoint_group.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gbp_endpoint_group_add_and_lock()

int gbp_endpoint_group_add_and_lock ( vnid_t  vnid,
u16  sclass,
u32  bd_id,
u32  rd_id,
u32  uplink_sw_if_index,
const gbp_endpoint_retention_t retention 
)

Definition at line 80 of file gbp_endpoint_group.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gbp_endpoint_group_delete()

int gbp_endpoint_group_delete ( sclass_t  sclass)

Definition at line 199 of file gbp_endpoint_group.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gbp_endpoint_group_find()

index_t gbp_endpoint_group_find ( sclass_t  sclass)

Definition at line 67 of file gbp_endpoint_group.c.

+ Here is the caller graph for this function:

◆ gbp_endpoint_group_get()

gbp_endpoint_group_t* gbp_endpoint_group_get ( index_t  i)

Definition at line 49 of file gbp_endpoint_group.c.

+ Here is the caller graph for this function:

◆ gbp_endpoint_group_get_bd_id()

u32 gbp_endpoint_group_get_bd_id ( const gbp_endpoint_group_t )

Definition at line 218 of file gbp_endpoint_group.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gbp_endpoint_group_get_fib_index()

index_t gbp_endpoint_group_get_fib_index ( const gbp_endpoint_group_t gg,
fib_protocol_t  fproto 
)

Definition at line 228 of file gbp_endpoint_group.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gbp_endpoint_group_lock()

void gbp_endpoint_group_lock ( index_t  index)

Definition at line 55 of file gbp_endpoint_group.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gbp_endpoint_group_unlock()

void gbp_endpoint_group_unlock ( index_t  index)

Definition at line 164 of file gbp_endpoint_group.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gbp_endpoint_group_walk()

void gbp_endpoint_group_walk ( gbp_endpoint_group_cb_t  bgpe,
void *  ctx 
)

Definition at line 239 of file gbp_endpoint_group.c.

+ Here is the caller graph for this function:

◆ gbp_epg_dpo_lookup()

static const dpo_id_t* gbp_epg_dpo_lookup ( sclass_t  sclass,
fib_protocol_t  fproto 
)
inlinestatic

Definition at line 142 of file gbp_endpoint_group.h.

+ Here is the caller graph for this function:

◆ gbp_epg_itf_lookup_sclass()

static u32 gbp_epg_itf_lookup_sclass ( sclass_t  sclass)
inlinestatic

Definition at line 125 of file gbp_endpoint_group.h.

+ Here is the caller graph for this function:

Variable Documentation

◆ gbp_endpoint_group_db

gbp_endpoint_group_db_t gbp_endpoint_group_db

DP functions and databases.

DP functions and databases.

Definition at line 36 of file gbp_endpoint_group.c.

◆ gbp_endpoint_group_pool

gbp_endpoint_group_t* gbp_endpoint_group_pool

Pool of GBP endpoint_groups.

Definition at line 31 of file gbp_endpoint_group.c.

◆ gbp_epg_sclass_db

uword* gbp_epg_sclass_db

Map sclass to EPG.

Definition at line 41 of file gbp_endpoint_group.c.