FD.io VPP  v21.01.1
Vector Packet Processing
dataplane_node_nonip.c File Reference
+ Include dependency graph for dataplane_node_nonip.c:

Go to the source code of this file.

Data Structures

struct  acl_fa_trace_t
 
struct  nonip_in_out_trace_t
 

Macros

#define foreach_acl_fa_error
 
#define foreach_nonip_in_error
 
#define foreach_nonip_out_error
 
#define get_u16(addr)   ( *((u16 *)(addr)) )
 

Enumerations

enum  acl_fa_error_t { ACL_FA_N_ERROR, ACL_FA_N_ERROR }
 
enum  l2_in_feat_arc_error_t { FA_IN_NONIP_N_ERROR, L2_IN_FEAT_ARC_N_ERROR }
 
enum  l2_out_feat_arc_error_t { FA_OUT_NONIP_N_ERROR, L2_OUT_FEAT_ARC_N_ERROR }
 

Functions

static u8format_nonip_in_out_trace (u8 *s, u32 is_output, va_list *args)
 
static u8format_l2_nonip_in_trace (u8 *s, va_list *args)
 
static u8format_l2_nonip_out_trace (u8 *s, va_list *args)
 
static int is_permitted_ethertype (acl_main_t *am, int sw_if_index0, int is_output, u16 ethertype)
 
static uword nonip_in_out_node_fn (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame, int is_output)
 
VLIB_NODE_FN() acl_in_nonip_node (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
 
VLIB_NODE_FN() acl_out_nonip_node (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
 
 VNET_FEATURE_INIT (acl_in_l2_nonip_fa_feature, static)
 
 VNET_FEATURE_INIT (acl_out_l2_nonip_fa_feature, static)
 

Variables

static char * fa_in_nonip_error_strings []
 
static char * fa_out_nonip_error_strings []
 
vlib_node_registration_t acl_in_nonip_node
 (constructor) VLIB_REGISTER_NODE (acl_in_nonip_node) More...
 
vlib_node_registration_t acl_out_nonip_node
 (constructor) VLIB_REGISTER_NODE (acl_out_nonip_node) More...
 

Macro Definition Documentation

◆ foreach_acl_fa_error

#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_nonip.c.

◆ foreach_nonip_in_error

#define foreach_nonip_in_error
Value:
_(DROP, "dropped inbound non-whitelisted non-ip packets") \
_(PERMIT, "permitted inbound whitelisted non-ip packets") \
DROP
Definition: error.def:41

Definition at line 102 of file dataplane_node_nonip.c.

◆ foreach_nonip_out_error

#define foreach_nonip_out_error
Value:
_(DROP, "dropped outbound non-whitelisted non-ip packets") \
_(PERMIT, "permitted outbound whitelisted non-ip packets") \
DROP
Definition: error.def:41

Definition at line 107 of file dataplane_node_nonip.c.

◆ get_u16

#define get_u16 (   addr)    ( *((u16 *)(addr)) )

Definition at line 163 of file dataplane_node_nonip.c.

Enumeration Type Documentation

◆ acl_fa_error_t

Enumerator
ACL_FA_N_ERROR 
ACL_FA_N_ERROR 

Definition at line 59 of file dataplane_node_nonip.c.

◆ l2_in_feat_arc_error_t

Enumerator
FA_IN_NONIP_N_ERROR 
L2_IN_FEAT_ARC_N_ERROR 

Definition at line 114 of file dataplane_node_nonip.c.

◆ l2_out_feat_arc_error_t

Enumerator
FA_OUT_NONIP_N_ERROR 
L2_OUT_FEAT_ARC_N_ERROR 

Definition at line 128 of file dataplane_node_nonip.c.

Function Documentation

◆ acl_in_nonip_node()

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

Definition at line 225 of file dataplane_node_nonip.c.

+ Here is the call graph for this function:

◆ acl_out_nonip_node()

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

Definition at line 232 of file dataplane_node_nonip.c.

+ Here is the call graph for this function:

◆ format_l2_nonip_in_trace()

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

Definition at line 91 of file dataplane_node_nonip.c.

+ Here is the call graph for this function:

◆ format_l2_nonip_out_trace()

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

Definition at line 97 of file dataplane_node_nonip.c.

+ Here is the call graph for this function:

◆ format_nonip_in_out_trace()

static u8* format_nonip_in_out_trace ( u8 s,
u32  is_output,
va_list *  args 
)
static

Definition at line 78 of file dataplane_node_nonip.c.

+ Here is the caller graph for this function:

◆ is_permitted_ethertype()

static int is_permitted_ethertype ( acl_main_t am,
int  sw_if_index0,
int  is_output,
u16  ethertype 
)
inlinestatic

Definition at line 145 of file dataplane_node_nonip.c.

+ Here is the caller graph for this function:

◆ nonip_in_out_node_fn()

static uword nonip_in_out_node_fn ( vlib_main_t vm,
vlib_node_runtime_t node,
vlib_frame_t frame,
int  is_output 
)
inlinestatic

Definition at line 166 of file dataplane_node_nonip.c.

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

◆ VNET_FEATURE_INIT() [1/2]

VNET_FEATURE_INIT ( acl_in_l2_nonip_fa_feature  ,
static   
)

◆ VNET_FEATURE_INIT() [2/2]

VNET_FEATURE_INIT ( acl_out_l2_nonip_fa_feature  ,
static   
)

Variable Documentation

◆ acl_in_nonip_node

vlib_node_registration_t acl_in_nonip_node
Initial value:
=
{
.name = "acl-plugin-in-nonip-l2",
.vector_size = sizeof (u32),
.format_trace = format_l2_nonip_in_trace,
.error_strings = fa_in_nonip_error_strings,
.n_next_nodes = ACL_FA_N_NEXT,
.next_nodes =
{
[ACL_FA_ERROR_DROP] = "error-drop",
}
}
static u8 * format_l2_nonip_in_trace(u8 *s, va_list *args)
unsigned int u32
Definition: types.h:88
vl_api_fib_path_type_t type
Definition: fib_types.api:123
#define ARRAY_LEN(x)
Definition: clib.h:67
static char * fa_in_nonip_error_strings[]

(constructor) VLIB_REGISTER_NODE (acl_in_nonip_node)

Definition at line 242 of file dataplane_node_nonip.c.

◆ acl_out_nonip_node

vlib_node_registration_t acl_out_nonip_node
Initial value:
=
{
.name = "acl-plugin-out-nonip-l2",
.vector_size = sizeof (u32),
.format_trace = format_l2_nonip_out_trace,
.error_strings = fa_out_nonip_error_strings,
.n_next_nodes = ACL_FA_N_NEXT,
.next_nodes =
{
[ACL_FA_ERROR_DROP] = "error-drop",
}
}
static u8 * format_l2_nonip_out_trace(u8 *s, va_list *args)
unsigned int u32
Definition: types.h:88
vl_api_fib_path_type_t type
Definition: fib_types.api:123
#define ARRAY_LEN(x)
Definition: clib.h:67
static char * fa_out_nonip_error_strings[]

(constructor) VLIB_REGISTER_NODE (acl_out_nonip_node)

Definition at line 264 of file dataplane_node_nonip.c.

◆ fa_in_nonip_error_strings

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

Definition at line 122 of file dataplane_node_nonip.c.

◆ fa_out_nonip_error_strings

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

Definition at line 136 of file dataplane_node_nonip.c.