FD.io VPP  v20.09-64-g4f7b92f0a
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
 
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)) )
 
#define ACL_PLUGIN_VECTOR_SIZE   4
 
#define ACL_PLUGIN_PREFETCH_GAP   3
 

Enumerations

enum  acl_fa_error_t { 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)
 
static u16 get_current_policy_epoch (acl_main_t *am, int is_input, u32 sw_if_index0)
 
static void maybe_trace_buffer (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_buffer_t *b, u32 sw_if_index0, u32 lc_index0, u16 next0, int match_acl_in_index, int match_rule_index, fa_5tuple_t *fa_5tuple, u8 action, u32 trace_bitmap)
 
static int stale_session_deleted (acl_main_t *am, int is_input, acl_fa_per_worker_data_t *pw, u64 now, u32 sw_if_index0, fa_full_session_id_t f_sess_id)
 
static void get_sw_if_index_xN (int vector_sz, int is_input, vlib_buffer_t **b, u32 *out_sw_if_index)
 
static void fill_5tuple_xN (int vector_sz, acl_main_t *am, int is_ip6, int is_input, int is_l2_path, vlib_buffer_t **b, u32 *sw_if_index, fa_5tuple_t *out_fa_5tuple)
 
static void make_session_hash_xN (int vector_sz, acl_main_t *am, int is_ip6, u32 *sw_if_index, fa_5tuple_t *fa_5tuple, u64 *out_hash)
 
static void prefetch_session_entry (acl_main_t *am, fa_full_session_id_t f_sess_id)
 
static u8 process_established_session (vlib_main_t *vm, acl_main_t *am, u32 counter_node_index, int is_input, u64 now, fa_full_session_id_t f_sess_id, u32 *sw_if_index, fa_5tuple_t *fa_5tuple, u32 pkt_len, int node_trace_on, u32 *trace_bitmap)
 
static void acl_fa_node_common_prepare_fn (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame, int is_ip6, int is_input, int is_l2_path, int with_stateful_datapath)
 
static uword acl_fa_inner_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, int with_stateful_datapath, int node_trace_on, int reclassify_sessions)
 
static uword acl_fa_outer_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, int do_stateful_datapath)
 
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)
 
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)
 
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)
 
 VNET_FEATURE_INIT (acl_in_l2_ip6_fa_feature, static)
 
 VNET_FEATURE_INIT (acl_in_l2_ip4_fa_feature, static)
 
 VNET_FEATURE_INIT (acl_out_l2_ip6_fa_feature, static)
 
 VNET_FEATURE_INIT (acl_out_l2_ip4_fa_feature, static)
 
 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

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...
 
static char * acl_fa_error_strings []
 
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...
 

Macro Definition Documentation

◆ ACL_PLUGIN_PREFETCH_GAP

#define ACL_PLUGIN_PREFETCH_GAP   3

Definition at line 453 of file dataplane_node.c.

◆ ACL_PLUGIN_VECTOR_SIZE

#define ACL_PLUGIN_VECTOR_SIZE   4

Definition at line 452 of file dataplane_node.c.

◆ 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.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.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.c.

◆ get_u16

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

Definition at line 163 of file dataplane_node.c.

Enumeration Type Documentation

◆ acl_fa_error_t

Enumerator
ACL_FA_N_ERROR 

Definition at line 59 of file dataplane_node.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.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.c.

Function Documentation

◆ acl_fa_inner_node_fn()

static uword acl_fa_inner_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,
int  with_stateful_datapath,
int  node_trace_on,
int  reclassify_sessions 
)
inlinestatic

Definition at line 545 of file dataplane_node.c.

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

◆ acl_fa_node_common_prepare_fn()

static void acl_fa_node_common_prepare_fn ( vlib_main_t vm,
vlib_node_runtime_t node,
vlib_frame_t frame,
int  is_ip6,
int  is_input,
int  is_l2_path,
int  with_stateful_datapath 
)
inlinestatic

Definition at line 456 of file dataplane_node.c.

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

◆ acl_fa_node_fn()

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 
)
inlinestatic

Definition at line 866 of file dataplane_node.c.

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

◆ acl_fa_outer_node_fn()

static uword acl_fa_outer_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,
int  do_stateful_datapath 
)
inlinestatic

Definition at line 830 of file dataplane_node.c.

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

◆ acl_in_fa_ip4_node()

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

Definition at line 995 of file dataplane_node.c.

+ Here is the call graph for this function:

◆ acl_in_fa_ip6_node()

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

Definition at line 988 of file dataplane_node.c.

+ Here is the call graph for this function:

◆ acl_in_l2_ip4_node()

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

Definition at line 965 of file dataplane_node.c.

+ Here is the call graph for this function:

◆ acl_in_l2_ip6_node()

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

Definition at line 958 of file dataplane_node.c.

+ Here is the call graph for this function:

◆ 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.c.

+ Here is the call graph for this function:

◆ acl_out_fa_ip4_node()

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

Definition at line 1009 of file dataplane_node.c.

+ Here is the call graph for this function:

◆ acl_out_fa_ip6_node()

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

Definition at line 1002 of file dataplane_node.c.

+ Here is the call graph for this function:

◆ acl_out_l2_ip4_node()

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

Definition at line 979 of file dataplane_node.c.

+ Here is the call graph for this function:

◆ acl_out_l2_ip6_node()

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

Definition at line 972 of file dataplane_node.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.c.

+ Here is the call graph for this function:

◆ fill_5tuple_xN()

static void fill_5tuple_xN ( int  vector_sz,
acl_main_t am,
int  is_ip6,
int  is_input,
int  is_l2_path,
vlib_buffer_t **  b,
u32 sw_if_index,
fa_5tuple_t out_fa_5tuple 
)
inlinestatic

Definition at line 375 of file dataplane_node.c.

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

◆ format_acl_plugin_5tuple()

u8* format_acl_plugin_5tuple ( u8 s,
va_list *  args 
)

Definition at line 922 of file dataplane_node.c.

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

◆ format_acl_plugin_trace()

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

Definition at line 930 of file dataplane_node.c.

+ Here is the call graph for this function:

◆ format_fa_5tuple()

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

Definition at line 883 of file dataplane_node.c.

+ Here is the call graph for this function:
+ Here is the caller 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.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.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.c.

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

◆ get_current_policy_epoch()

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

Definition at line 291 of file dataplane_node.c.

+ Here is the caller graph for this function:

◆ get_sw_if_index_xN()

static void get_sw_if_index_xN ( int  vector_sz,
int  is_input,
vlib_buffer_t **  b,
u32 out_sw_if_index 
)
inlinestatic

Definition at line 363 of file dataplane_node.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.c.

+ Here is the caller graph for this function:

◆ make_session_hash_xN()

static void make_session_hash_xN ( int  vector_sz,
acl_main_t am,
int  is_ip6,
u32 sw_if_index,
fa_5tuple_t fa_5tuple,
u64 out_hash 
)
inlinestatic

Definition at line 386 of file dataplane_node.c.

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

◆ maybe_trace_buffer()

static void maybe_trace_buffer ( vlib_main_t vm,
vlib_node_runtime_t node,
vlib_buffer_t b,
u32  sw_if_index0,
u32  lc_index0,
u16  next0,
int  match_acl_in_index,
int  match_rule_index,
fa_5tuple_t fa_5tuple,
u8  action,
u32  trace_bitmap 
)
inlinestatic

Definition at line 304 of file dataplane_node.c.

+ Here is the call graph for this function:
+ 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.c.

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

◆ prefetch_session_entry()

static void prefetch_session_entry ( acl_main_t am,
fa_full_session_id_t  f_sess_id 
)
inlinestatic

Definition at line 397 of file dataplane_node.c.

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

◆ process_established_session()

static u8 process_established_session ( vlib_main_t vm,
acl_main_t am,
u32  counter_node_index,
int  is_input,
u64  now,
fa_full_session_id_t  f_sess_id,
u32 sw_if_index,
fa_5tuple_t fa_5tuple,
u32  pkt_len,
int  node_trace_on,
u32 trace_bitmap 
)
inlinestatic

Definition at line 405 of file dataplane_node.c.

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

◆ stale_session_deleted()

static int stale_session_deleted ( acl_main_t am,
int  is_input,
acl_fa_per_worker_data_t pw,
u64  now,
u32  sw_if_index0,
fa_full_session_id_t  f_sess_id 
)
inlinestatic

Definition at line 330 of file dataplane_node.c.

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

◆ VNET_FEATURE_INIT() [1/10]

VNET_FEATURE_INIT ( acl_in_l2_nonip_fa_feature  ,
static   
)

◆ VNET_FEATURE_INIT() [2/10]

VNET_FEATURE_INIT ( acl_out_l2_nonip_fa_feature  ,
static   
)

◆ VNET_FEATURE_INIT() [3/10]

VNET_FEATURE_INIT ( acl_in_l2_ip6_fa_feature  ,
static   
)

◆ VNET_FEATURE_INIT() [4/10]

VNET_FEATURE_INIT ( acl_in_l2_ip4_fa_feature  ,
static   
)

◆ VNET_FEATURE_INIT() [5/10]

VNET_FEATURE_INIT ( acl_out_l2_ip6_fa_feature  ,
static   
)

◆ VNET_FEATURE_INIT() [6/10]

VNET_FEATURE_INIT ( acl_out_l2_ip4_fa_feature  ,
static   
)

◆ VNET_FEATURE_INIT() [7/10]

VNET_FEATURE_INIT ( acl_in_ip6_fa_feature  ,
static   
)

◆ VNET_FEATURE_INIT() [8/10]

VNET_FEATURE_INIT ( acl_in_ip4_fa_feature  ,
static   
)

◆ VNET_FEATURE_INIT() [9/10]

VNET_FEATURE_INIT ( acl_out_ip6_fa_feature  ,
static   
)

◆ VNET_FEATURE_INIT() [10/10]

VNET_FEATURE_INIT ( acl_out_ip4_fa_feature  ,
static   
)

Variable Documentation

◆ acl_fa_error_strings

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

Definition at line 952 of file dataplane_node.c.

◆ acl_in_fa_ip4_node

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[]
vl_api_fib_path_type_t type
Definition: fib_types.api:123
#define ARRAY_LEN(x)
Definition: clib.h:67
static u8 * format_acl_plugin_trace(u8 *s, va_list *args)

(constructor) VLIB_REGISTER_NODE (acl_in_fa_ip4_node)

Definition at line 1129 of file dataplane_node.c.

◆ acl_in_fa_ip6_node

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[]
vl_api_fib_path_type_t type
Definition: fib_types.api:123
#define ARRAY_LEN(x)
Definition: clib.h:67
static u8 * format_acl_plugin_trace(u8 *s, va_list *args)

(constructor) VLIB_REGISTER_NODE (acl_in_fa_ip6_node)

Definition at line 1107 of file dataplane_node.c.

◆ acl_in_l2_ip4_node

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[]
vl_api_fib_path_type_t type
Definition: fib_types.api:123
#define ARRAY_LEN(x)
Definition: clib.h:67
static u8 * format_acl_plugin_trace(u8 *s, va_list *args)

(constructor) VLIB_REGISTER_NODE (acl_in_l2_ip4_node)

Definition at line 1038 of file dataplane_node.c.

◆ acl_in_l2_ip6_node

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[]
vl_api_fib_path_type_t type
Definition: fib_types.api:123
#define ARRAY_LEN(x)
Definition: clib.h:67
static u8 * format_acl_plugin_trace(u8 *s, va_list *args)

(constructor) VLIB_REGISTER_NODE (acl_in_l2_ip6_node)

Definition at line 1016 of file dataplane_node.c.

◆ 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 char * fa_in_nonip_error_strings[]
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 u8 * format_l2_nonip_in_trace(u8 *s, va_list *args)

(constructor) VLIB_REGISTER_NODE (acl_in_nonip_node)

Definition at line 242 of file dataplane_node.c.

◆ acl_out_fa_ip4_node

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[]
vl_api_fib_path_type_t type
Definition: fib_types.api:123
#define ARRAY_LEN(x)
Definition: clib.h:67
static u8 * format_acl_plugin_trace(u8 *s, va_list *args)

(constructor) VLIB_REGISTER_NODE (acl_out_fa_ip4_node)

Definition at line 1174 of file dataplane_node.c.

◆ acl_out_fa_ip6_node

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[]
vl_api_fib_path_type_t type
Definition: fib_types.api:123
#define ARRAY_LEN(x)
Definition: clib.h:67
static u8 * format_acl_plugin_trace(u8 *s, va_list *args)

(constructor) VLIB_REGISTER_NODE (acl_out_fa_ip6_node)

Definition at line 1152 of file dataplane_node.c.

◆ acl_out_l2_ip4_node

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[]
vl_api_fib_path_type_t type
Definition: fib_types.api:123
#define ARRAY_LEN(x)
Definition: clib.h:67
static u8 * format_acl_plugin_trace(u8 *s, va_list *args)

(constructor) VLIB_REGISTER_NODE (acl_out_l2_ip4_node)

Definition at line 1084 of file dataplane_node.c.

◆ acl_out_l2_ip6_node

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[]
vl_api_fib_path_type_t type
Definition: fib_types.api:123
#define ARRAY_LEN(x)
Definition: clib.h:67
static u8 * format_acl_plugin_trace(u8 *s, va_list *args)

(constructor) VLIB_REGISTER_NODE (acl_out_l2_ip6_node)

Definition at line 1061 of file dataplane_node.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",
}
}
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[]
static u8 * format_l2_nonip_out_trace(u8 *s, va_list *args)

(constructor) VLIB_REGISTER_NODE (acl_out_nonip_node)

Definition at line 264 of file dataplane_node.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.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.c.