FD.io VPP  v19.08.3-2-gbabecb413
Vector Packet Processing
policer.c File Reference
+ Include dependency graph for policer.c:

Go to the source code of this file.

Macros

#define foreach_config_param
 

Functions

clib_error_tpolicer_add_del (vlib_main_t *vm, u8 *name, sse2_qos_pol_cfg_params_st *cfg, u32 *policer_index, u8 is_add)
 
u8format_policer_instance (u8 *s, va_list *va)
 
static u8format_policer_round_type (u8 *s, va_list *va)
 
static u8format_policer_rate_type (u8 *s, va_list *va)
 
static u8format_policer_type (u8 *s, va_list *va)
 
static u8format_dscp (u8 *s, va_list *va)
 
static u8format_policer_action_type (u8 *s, va_list *va)
 
u8format_policer_config (u8 *s, va_list *va)
 
static uword unformat_policer_type (unformat_input_t *input, va_list *va)
 
static uword unformat_policer_round_type (unformat_input_t *input, va_list *va)
 
static uword unformat_policer_rate_type (unformat_input_t *input, va_list *va)
 
static uword unformat_policer_cir (unformat_input_t *input, va_list *va)
 
static uword unformat_policer_eir (unformat_input_t *input, va_list *va)
 
static uword unformat_policer_cb (unformat_input_t *input, va_list *va)
 
static uword unformat_policer_eb (unformat_input_t *input, va_list *va)
 
static uword unformat_dscp (unformat_input_t *input, va_list *va)
 
static uword unformat_policer_action_type (unformat_input_t *input, va_list *va)
 
static uword unformat_policer_action (unformat_input_t *input, va_list *va)
 
static uword unformat_policer_classify_next_index (unformat_input_t *input, va_list *va)
 
static uword unformat_policer_classify_precolor (unformat_input_t *input, va_list *va)
 
static clib_error_tconfigure_policer_command_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
 
static clib_error_tshow_policer_command_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
 
static clib_error_tshow_policer_pools_command_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
 
clib_error_tpolicer_init (vlib_main_t *vm)
 

Variables

vnet_policer_main_t vnet_policer_main
 
static vlib_cli_command_t configure_policer_command
 (constructor) VLIB_CLI_COMMAND (configure_policer_command) More...
 
static vlib_cli_command_t show_policer_command
 (constructor) VLIB_CLI_COMMAND (show_policer_command) More...
 
static vlib_cli_command_t show_policer_pools_command
 (constructor) VLIB_CLI_COMMAND (show_policer_pools_command) More...
 

Macro Definition Documentation

◆ foreach_config_param

#define foreach_config_param
Value:
_(eb) \
_(cb) \
_(eir) \
_(cir) \
_(rate_type) \
_(round_type) \
_(type) \
_(action)
vl_api_fib_path_type_t type
Definition: fib_types.api:123

Definition at line 411 of file policer.c.

Function Documentation

◆ configure_policer_command_fn()

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

Definition at line 422 of file policer.c.

+ Here is the call graph for this function:

◆ format_dscp()

static u8* format_dscp ( u8 s,
va_list *  va 
)
static

Definition at line 174 of file policer.c.

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

◆ format_policer_action_type()

static u8* format_policer_action_type ( u8 s,
va_list *  va 
)
static

Definition at line 192 of file policer.c.

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

◆ format_policer_config()

u8* format_policer_config ( u8 s,
va_list *  va 
)

Definition at line 209 of file policer.c.

+ Here is the call graph for this function:

◆ format_policer_instance()

u8* format_policer_instance ( u8 s,
va_list *  va 
)

Definition at line 101 of file policer.c.

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

◆ format_policer_rate_type()

static u8* format_policer_rate_type ( u8 s,
va_list *  va 
)
static

Definition at line 136 of file policer.c.

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

◆ format_policer_round_type()

static u8* format_policer_round_type ( u8 s,
va_list *  va 
)
static

Definition at line 119 of file policer.c.

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

◆ format_policer_type()

static u8* format_policer_type ( u8 s,
va_list *  va 
)
static

Definition at line 150 of file policer.c.

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

◆ policer_add_del()

clib_error_t* policer_add_del ( vlib_main_t vm,
u8 name,
sse2_qos_pol_cfg_params_st cfg,
u32 policer_index,
u8  is_add 
)

Definition at line 22 of file policer.c.

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

◆ policer_init()

clib_error_t* policer_init ( vlib_main_t vm)

Definition at line 540 of file policer.c.

+ Here is the call graph for this function:

◆ show_policer_command_fn()

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

Definition at line 476 of file policer.c.

+ Here is the call graph for this function:

◆ show_policer_pools_command_fn()

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

Definition at line 519 of file policer.c.

+ Here is the call graph for this function:

◆ unformat_dscp()

static uword unformat_dscp ( unformat_input_t input,
va_list *  va 
)
static

Definition at line 326 of file policer.c.

+ Here is the caller graph for this function:

◆ unformat_policer_action()

static uword unformat_policer_action ( unformat_input_t input,
va_list *  va 
)
static

Definition at line 357 of file policer.c.

+ Here is the call graph for this function:

◆ unformat_policer_action_type()

static uword unformat_policer_action_type ( unformat_input_t input,
va_list *  va 
)
static

Definition at line 340 of file policer.c.

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

◆ unformat_policer_cb()

static uword unformat_policer_cb ( unformat_input_t input,
va_list *  va 
)
static

Definition at line 306 of file policer.c.

+ Here is the call graph for this function:

◆ unformat_policer_cir()

static uword unformat_policer_cir ( unformat_input_t input,
va_list *  va 
)
static

Definition at line 286 of file policer.c.

+ Here is the call graph for this function:

◆ unformat_policer_classify_next_index()

static uword unformat_policer_classify_next_index ( unformat_input_t input,
va_list *  va 
)
static

Definition at line 374 of file policer.c.

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

◆ unformat_policer_classify_precolor()

static uword unformat_policer_classify_precolor ( unformat_input_t input,
va_list *  va 
)
static

Definition at line 397 of file policer.c.

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

◆ unformat_policer_eb()

static uword unformat_policer_eb ( unformat_input_t input,
va_list *  va 
)
static

Definition at line 316 of file policer.c.

+ Here is the call graph for this function:

◆ unformat_policer_eir()

static uword unformat_policer_eir ( unformat_input_t input,
va_list *  va 
)
static

Definition at line 296 of file policer.c.

+ Here is the call graph for this function:

◆ unformat_policer_rate_type()

static uword unformat_policer_rate_type ( unformat_input_t input,
va_list *  va 
)
static

Definition at line 269 of file policer.c.

+ Here is the call graph for this function:

◆ unformat_policer_round_type()

static uword unformat_policer_round_type ( unformat_input_t input,
va_list *  va 
)
static

Definition at line 250 of file policer.c.

+ Here is the call graph for this function:

◆ unformat_policer_type()

static uword unformat_policer_type ( unformat_input_t input,
va_list *  va 
)
static

Definition at line 227 of file policer.c.

+ Here is the call graph for this function:

Variable Documentation

◆ configure_policer_command

vlib_cli_command_t configure_policer_command
static
Initial value:
= {
.path = "configure policer",
.short_help = "configure policer name <name> <params> ",
}
static clib_error_t * configure_policer_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Definition: policer.c:422

(constructor) VLIB_CLI_COMMAND (configure_policer_command)

Definition at line 468 of file policer.c.

◆ show_policer_command

vlib_cli_command_t show_policer_command
static
Initial value:
= {
.path = "show policer",
.short_help = "show policer [name]",
}
static clib_error_t * show_policer_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Definition: policer.c:476

(constructor) VLIB_CLI_COMMAND (show_policer_command)

Definition at line 511 of file policer.c.

◆ show_policer_pools_command

vlib_cli_command_t show_policer_pools_command
static
Initial value:
= {
.path = "show policer pools",
.short_help = "show policer pools",
}
static clib_error_t * show_policer_pools_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Definition: policer.c:519

(constructor) VLIB_CLI_COMMAND (show_policer_pools_command)

Definition at line 532 of file policer.c.

◆ vnet_policer_main

vnet_policer_main_t vnet_policer_main

Definition at line 19 of file policer.c.