FD.io VPP  v18.07-rc0-415-g6c78436
Vector Packet Processing
gbp_endpoint.c File Reference
+ Include dependency graph for gbp_endpoint.c:

Go to the source code of this file.

Data Structures

struct  gbp_ip4_to_epg_db_t_
 IP4 destintion address to destination EPG mapping table. More...
 
struct  gbp_ip6_to_epg_db_t_
 IP6 destintion address to destination EPG mapping table. More...
 

Typedefs

typedef struct gbp_ip4_to_epg_db_t_ gbp_ip4_to_epg_db_t
 IP4 destintion address to destination EPG mapping table. More...
 
typedef struct gbp_ip6_to_epg_db_t_ gbp_ip6_to_epg_db_t
 IP6 destintion address to destination EPG mapping table. More...
 

Functions

static void gbp_ip_epg_update (const ip46_address_t *ip, epg_id_t epg_id)
 
static void gbp_ip_epg_delete (const ip46_address_t *ip)
 
void gbp_itf_epg_update (u32 sw_if_index, epg_id_t src_epg, u8 do_policy)
 Port to EPG mapping management. More...
 
void gbp_itf_epg_delete (u32 sw_if_index)
 
int gbp_endpoint_update (u32 sw_if_index, const ip46_address_t *ip, epg_id_t epg_id)
 
void gbp_endpoint_delete (u32 sw_if_index, const ip46_address_t *ip)
 
void gbp_endpoint_walk (gbp_endpoint_cb_t cb, void *ctx)
 
static clib_error_tgbp_endpoint_cli (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
 
static int gbp_endpoint_show_one (gbp_endpoint_t *gbpe, void *ctx)
 
static clib_error_tgbp_endpoint_show (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
 
static clib_error_tgbp_endpoint_init (vlib_main_t *vm)
 

Variables

static gbp_ip4_to_epg_db_t gbp_ip4_to_epg_db
 
static gbp_ip6_to_epg_db_t gbp_ip6_to_epg_db
 
static const gbp_itf_t ITF_INVALID
 
gbp_itf_to_epg_db_t gbp_itf_to_epg_db
 DP functions and databases. More...
 
static gbp_endpoint_tgbp_endpoint_pool
 Pool of GBP endpoints. More...
 
static uwordgbp_endpoint_db
 DB of endpoints. More...
 
static vlib_cli_command_t gbp_endpoint_cli_node
 (constructor) VLIB_CLI_COMMAND (gbp_endpoint_cli_node) More...
 
static vlib_cli_command_t gbp_endpoint_show_node
 (constructor) VLIB_CLI_COMMAND (gbp_endpoint_show_node) More...
 

Typedef Documentation

IP4 destintion address to destination EPG mapping table.

IP6 destintion address to destination EPG mapping table.

Function Documentation

static clib_error_t* gbp_endpoint_cli ( vlib_main_t vm,
unformat_input_t input,
vlib_cli_command_t cmd 
)
static

Definition at line 234 of file gbp_endpoint.c.

+ Here is the call graph for this function:

void gbp_endpoint_delete ( u32  sw_if_index,
const ip46_address_t *  ip 
)

Definition at line 192 of file gbp_endpoint.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static clib_error_t* gbp_endpoint_init ( vlib_main_t vm)
static

Definition at line 373 of file gbp_endpoint.c.

static clib_error_t* gbp_endpoint_show ( vlib_main_t vm,
unformat_input_t input,
vlib_cli_command_t cmd 
)
static

Definition at line 310 of file gbp_endpoint.c.

+ Here is the call graph for this function:

static int gbp_endpoint_show_one ( gbp_endpoint_t gbpe,
void *  ctx 
)
static

Definition at line 294 of file gbp_endpoint.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int gbp_endpoint_update ( u32  sw_if_index,
const ip46_address_t *  ip,
epg_id_t  epg_id 
)

Definition at line 135 of file gbp_endpoint.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void gbp_endpoint_walk ( gbp_endpoint_cb_t  cb,
void *  ctx 
)

Definition at line 220 of file gbp_endpoint.c.

+ Here is the caller graph for this function:

static void gbp_ip_epg_delete ( const ip46_address_t *  ip)
static

Definition at line 85 of file gbp_endpoint.c.

+ Here is the caller graph for this function:

static void gbp_ip_epg_update ( const ip46_address_t *  ip,
epg_id_t  epg_id 
)
static

Definition at line 68 of file gbp_endpoint.c.

+ Here is the caller graph for this function:

void gbp_itf_epg_delete ( u32  sw_if_index)

Definition at line 117 of file gbp_endpoint.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void gbp_itf_epg_update ( u32  sw_if_index,
epg_id_t  src_epg,
u8  do_policy 
)

Port to EPG mapping management.

Definition at line 98 of file gbp_endpoint.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Variable Documentation

vlib_cli_command_t gbp_endpoint_cli_node
static
Initial value:
= {
.path = "gbp endpoint",
.short_help = "gbp endpoint [del] <interface> epg <ID> ip <IP>",
.function = gbp_endpoint_cli,
}
static clib_error_t * gbp_endpoint_cli(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Definition: gbp_endpoint.c:234

(constructor) VLIB_CLI_COMMAND (gbp_endpoint_cli_node)

Definition at line 286 of file gbp_endpoint.c.

uword* gbp_endpoint_db
static

DB of endpoints.

Definition at line 65 of file gbp_endpoint.c.

gbp_endpoint_t* gbp_endpoint_pool
static

Pool of GBP endpoints.

Definition at line 60 of file gbp_endpoint.c.

vlib_cli_command_t gbp_endpoint_show_node
static
Initial value:
= {
.path = "show gbp endpoint",
.short_help = "show gbp endpoint\n",
.function = gbp_endpoint_show,
}
static clib_error_t * gbp_endpoint_show(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Definition: gbp_endpoint.c:310

(constructor) VLIB_CLI_COMMAND (gbp_endpoint_show_node)

Definition at line 365 of file gbp_endpoint.c.

gbp_ip4_to_epg_db_t gbp_ip4_to_epg_db
static

Definition at line 34 of file gbp_endpoint.c.

gbp_ip6_to_epg_db_t gbp_ip6_to_epg_db
static

Definition at line 47 of file gbp_endpoint.c.

gbp_itf_to_epg_db_t gbp_itf_to_epg_db

DP functions and databases.

Definition at line 55 of file gbp_endpoint.c.

const gbp_itf_t ITF_INVALID
static
Initial value:
= {
.gi_epg = EPG_INVALID,
.gi_ref_count = 0,
}
#define EPG_INVALID
Definition: gbp_types.h:22

Definition at line 50 of file gbp_endpoint.c.