FD.io VPP  v18.10-32-g1161dda
Vector Packet Processing
dataplane_node.c File Reference
+ Include dependency graph for dataplane_node.c:

Go to the source code of this file.

Data Structures

struct  acl_fa_trace_t
 

Macros

#define foreach_acl_fa_error
 

Enumerations

enum  acl_fa_error_t { ACL_FA_N_ERROR }
 

Functions

static u16 get_current_policy_epoch (acl_main_t *am, int is_input, u32 sw_if_index0)
 
static uword acl_fa_node_fn (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame, int is_ip6, int is_input, int is_l2_path, u32 *l2_feat_next_node_index, vlib_node_registration_t *acl_fa_node)
 
VLIB_NODE_FN() acl_in_l2_ip6_node (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
 
VLIB_NODE_FN() acl_in_l2_ip4_node (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
 
VLIB_NODE_FN() acl_out_l2_ip6_node (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
 
VLIB_NODE_FN() acl_out_l2_ip4_node (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
 
VLIB_NODE_FN() acl_in_fa_ip6_node (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
 
VLIB_NODE_FN() acl_in_fa_ip4_node (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
 
VLIB_NODE_FN() acl_out_fa_ip6_node (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
 
VLIB_NODE_FN() acl_out_fa_ip4_node (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
 
static u8format_fa_5tuple (u8 *s, va_list *args)
 
u8format_acl_plugin_5tuple (u8 *s, va_list *args)
 
static u8format_acl_plugin_trace (u8 *s, va_list *args)
 
 VNET_FEATURE_INIT (acl_in_ip6_fa_feature, static)
 
 VNET_FEATURE_INIT (acl_in_ip4_fa_feature, static)
 
 VNET_FEATURE_INIT (acl_out_ip6_fa_feature, static)
 
 VNET_FEATURE_INIT (acl_out_ip4_fa_feature, static)
 

Variables

vlib_node_registration_t acl_in_l2_ip6_node
 (constructor) VLIB_REGISTER_NODE (acl_in_l2_ip6_node) More...
 
vlib_node_registration_t acl_in_l2_ip4_node
 (constructor) VLIB_REGISTER_NODE (acl_in_l2_ip4_node) More...
 
vlib_node_registration_t acl_out_l2_ip6_node
 (constructor) VLIB_REGISTER_NODE (acl_out_l2_ip6_node) More...
 
vlib_node_registration_t acl_out_l2_ip4_node
 (constructor) VLIB_REGISTER_NODE (acl_out_l2_ip4_node) More...
 
vlib_node_registration_t acl_in_fa_ip6_node
 (constructor) VLIB_REGISTER_NODE (acl_in_fa_ip6_node) More...
 
vlib_node_registration_t acl_in_fa_ip4_node
 (constructor) VLIB_REGISTER_NODE (acl_in_fa_ip4_node) More...
 
vlib_node_registration_t acl_out_fa_ip6_node
 (constructor) VLIB_REGISTER_NODE (acl_out_fa_ip6_node) More...
 
vlib_node_registration_t acl_out_fa_ip4_node
 (constructor) VLIB_REGISTER_NODE (acl_out_fa_ip4_node) More...
 
static char * acl_fa_error_strings []
 

Macro Definition Documentation

#define foreach_acl_fa_error
Value:
_(ACL_DROP, "ACL deny packets") \
_(ACL_PERMIT, "ACL permit packets") \
_(ACL_NEW_SESSION, "new sessions added") \
_(ACL_EXIST_SESSION, "existing session packets") \
_(ACL_CHECK, "checked packets") \
_(ACL_RESTART_SESSION_TIMER, "restart session timer") \
_(ACL_TOO_MANY_SESSIONS, "too many sessions to add new") \
/* end of errors */

Definition at line 49 of file dataplane_node.c.

Enumeration Type Documentation

Enumerator
ACL_FA_N_ERROR 

Definition at line 59 of file dataplane_node.c.

Function Documentation

static uword acl_fa_node_fn ( vlib_main_t vm,
vlib_node_runtime_t node,
vlib_frame_t frame,
int  is_ip6,
int  is_input,
int  is_l2_path,
u32 l2_feat_next_node_index,
vlib_node_registration_t acl_fa_node 
)
inlinestatic

Definition at line 83 of file dataplane_node.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

VLIB_NODE_FN() acl_in_fa_ip4_node ( vlib_main_t vm,
vlib_node_runtime_t node,
vlib_frame_t frame 
)

Definition at line 395 of file dataplane_node.c.

+ Here is the call graph for this function:

VLIB_NODE_FN() acl_in_fa_ip6_node ( vlib_main_t vm,
vlib_node_runtime_t node,
vlib_frame_t frame 
)

Definition at line 387 of file dataplane_node.c.

+ Here is the call graph for this function:

VLIB_NODE_FN() acl_in_l2_ip4_node ( vlib_main_t vm,
vlib_node_runtime_t node,
vlib_frame_t frame 
)

Definition at line 352 of file dataplane_node.c.

+ Here is the call graph for this function:

VLIB_NODE_FN() acl_in_l2_ip6_node ( vlib_main_t vm,
vlib_node_runtime_t node,
vlib_frame_t frame 
)

Definition at line 341 of file dataplane_node.c.

+ Here is the call graph for this function:

VLIB_NODE_FN() acl_out_fa_ip4_node ( vlib_main_t vm,
vlib_node_runtime_t node,
vlib_frame_t frame 
)

Definition at line 411 of file dataplane_node.c.

+ Here is the call graph for this function:

VLIB_NODE_FN() acl_out_fa_ip6_node ( vlib_main_t vm,
vlib_node_runtime_t node,
vlib_frame_t frame 
)

Definition at line 403 of file dataplane_node.c.

+ Here is the call graph for this function:

VLIB_NODE_FN() acl_out_l2_ip4_node ( vlib_main_t vm,
vlib_node_runtime_t node,
vlib_frame_t frame 
)

Definition at line 374 of file dataplane_node.c.

+ Here is the call graph for this function:

VLIB_NODE_FN() acl_out_l2_ip6_node ( vlib_main_t vm,
vlib_node_runtime_t node,
vlib_frame_t frame 
)

Definition at line 363 of file dataplane_node.c.

+ Here is the call graph for this function:

u8* format_acl_plugin_5tuple ( u8 s,
va_list *  args 
)

Definition at line 451 of file dataplane_node.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static u8* format_acl_plugin_trace ( u8 s,
va_list *  args 
)
static

Definition at line 459 of file dataplane_node.c.

+ Here is the call graph for this function:

static u8* format_fa_5tuple ( u8 s,
va_list *  args 
)
static

Definition at line 419 of file dataplane_node.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static u16 get_current_policy_epoch ( acl_main_t am,
int  is_input,
u32  sw_if_index0 
)
inlinestatic

Definition at line 70 of file dataplane_node.c.

+ Here is the caller graph for this function:

VNET_FEATURE_INIT ( acl_in_ip6_fa_feature  ,
static   
)
VNET_FEATURE_INIT ( acl_in_ip4_fa_feature  ,
static   
)
VNET_FEATURE_INIT ( acl_out_ip6_fa_feature  ,
static   
)
VNET_FEATURE_INIT ( acl_out_ip4_fa_feature  ,
static   
)

Variable Documentation

char* acl_fa_error_strings[]
static
Initial value:
= {
#define _(sym,string)
}
#define foreach_acl_fa_error

Definition at line 481 of file dataplane_node.c.

vlib_node_registration_t acl_in_fa_ip4_node
Initial value:
=
{
.name = "acl-plugin-in-ip4-fa",
.vector_size = sizeof (u32),
.format_trace = format_acl_plugin_trace,
.error_strings = acl_fa_error_strings,
.n_next_nodes = ACL_FA_N_NEXT,
.next_nodes =
{
[ACL_FA_ERROR_DROP] = "error-drop",
}
}
unsigned int u32
Definition: types.h:88
static char * acl_fa_error_strings[]
#define ARRAY_LEN(x)
Definition: clib.h:61
static u8 * format_acl_plugin_trace(u8 *s, va_list *args)

(constructor) VLIB_REGISTER_NODE (acl_in_fa_ip4_node)

Definition at line 394 of file dataplane_node.c.

vlib_node_registration_t acl_in_fa_ip6_node
Initial value:
=
{
.name = "acl-plugin-in-ip6-fa",
.vector_size = sizeof (u32),
.format_trace = format_acl_plugin_trace,
.error_strings = acl_fa_error_strings,
.n_next_nodes = ACL_FA_N_NEXT,
.next_nodes =
{
[ACL_FA_ERROR_DROP] = "error-drop",
}
}
unsigned int u32
Definition: types.h:88
static char * acl_fa_error_strings[]
#define ARRAY_LEN(x)
Definition: clib.h:61
static u8 * format_acl_plugin_trace(u8 *s, va_list *args)

(constructor) VLIB_REGISTER_NODE (acl_in_fa_ip6_node)

Definition at line 386 of file dataplane_node.c.

vlib_node_registration_t acl_in_l2_ip4_node
Initial value:
=
{
.name = "acl-plugin-in-ip4-l2",
.vector_size = sizeof (u32),
.format_trace = format_acl_plugin_trace,
.error_strings = acl_fa_error_strings,
.n_next_nodes = ACL_FA_N_NEXT,
.next_nodes =
{
[ACL_FA_ERROR_DROP] = "error-drop",
}
}
unsigned int u32
Definition: types.h:88
static char * acl_fa_error_strings[]
#define ARRAY_LEN(x)
Definition: clib.h:61
static u8 * format_acl_plugin_trace(u8 *s, va_list *args)

(constructor) VLIB_REGISTER_NODE (acl_in_l2_ip4_node)

Definition at line 351 of file dataplane_node.c.

vlib_node_registration_t acl_in_l2_ip6_node
Initial value:
=
{
.name = "acl-plugin-in-ip6-l2",
.vector_size = sizeof (u32),
.format_trace = format_acl_plugin_trace,
.error_strings = acl_fa_error_strings,
.n_next_nodes = ACL_FA_N_NEXT,
.next_nodes =
{
[ACL_FA_ERROR_DROP] = "error-drop",
}
}
unsigned int u32
Definition: types.h:88
static char * acl_fa_error_strings[]
#define ARRAY_LEN(x)
Definition: clib.h:61
static u8 * format_acl_plugin_trace(u8 *s, va_list *args)

(constructor) VLIB_REGISTER_NODE (acl_in_l2_ip6_node)

Definition at line 340 of file dataplane_node.c.

vlib_node_registration_t acl_out_fa_ip4_node
Initial value:
=
{
.name = "acl-plugin-out-ip4-fa",
.vector_size = sizeof (u32),
.format_trace = format_acl_plugin_trace,
.error_strings = acl_fa_error_strings,
.n_next_nodes = ACL_FA_N_NEXT,
.next_nodes =
{
[ACL_FA_ERROR_DROP] = "error-drop",
}
}
unsigned int u32
Definition: types.h:88
static char * acl_fa_error_strings[]
#define ARRAY_LEN(x)
Definition: clib.h:61
static u8 * format_acl_plugin_trace(u8 *s, va_list *args)

(constructor) VLIB_REGISTER_NODE (acl_out_fa_ip4_node)

Definition at line 410 of file dataplane_node.c.

vlib_node_registration_t acl_out_fa_ip6_node
Initial value:
=
{
.name = "acl-plugin-out-ip6-fa",
.vector_size = sizeof (u32),
.format_trace = format_acl_plugin_trace,
.error_strings = acl_fa_error_strings,
.n_next_nodes = ACL_FA_N_NEXT,
.next_nodes =
{
[ACL_FA_ERROR_DROP] = "error-drop",
}
}
unsigned int u32
Definition: types.h:88
static char * acl_fa_error_strings[]
#define ARRAY_LEN(x)
Definition: clib.h:61
static u8 * format_acl_plugin_trace(u8 *s, va_list *args)

(constructor) VLIB_REGISTER_NODE (acl_out_fa_ip6_node)

Definition at line 402 of file dataplane_node.c.

vlib_node_registration_t acl_out_l2_ip4_node
Initial value:
=
{
.name = "acl-plugin-out-ip4-l2",
.vector_size = sizeof (u32),
.format_trace = format_acl_plugin_trace,
.error_strings = acl_fa_error_strings,
.n_next_nodes = ACL_FA_N_NEXT,
.next_nodes =
{
[ACL_FA_ERROR_DROP] = "error-drop",
}
}
unsigned int u32
Definition: types.h:88
static char * acl_fa_error_strings[]
#define ARRAY_LEN(x)
Definition: clib.h:61
static u8 * format_acl_plugin_trace(u8 *s, va_list *args)

(constructor) VLIB_REGISTER_NODE (acl_out_l2_ip4_node)

Definition at line 373 of file dataplane_node.c.

vlib_node_registration_t acl_out_l2_ip6_node
Initial value:
=
{
.name = "acl-plugin-out-ip6-l2",
.vector_size = sizeof (u32),
.format_trace = format_acl_plugin_trace,
.error_strings = acl_fa_error_strings,
.n_next_nodes = ACL_FA_N_NEXT,
.next_nodes =
{
[ACL_FA_ERROR_DROP] = "error-drop",
}
}
unsigned int u32
Definition: types.h:88
static char * acl_fa_error_strings[]
#define ARRAY_LEN(x)
Definition: clib.h:61
static u8 * format_acl_plugin_trace(u8 *s, va_list *args)

(constructor) VLIB_REGISTER_NODE (acl_out_l2_ip6_node)

Definition at line 362 of file dataplane_node.c.