FD.io VPP  v21.06-1-gbb7418cf9
Vector Packet Processing
flow.c File Reference
+ Include dependency graph for flow.c:

Go to the source code of this file.

Macros

#define FLOW_IS_ETHERNET_CLASS(f)   (f->type == VNET_FLOW_TYPE_ETHERNET)
 
#define FLOW_IS_IPV4_CLASS(f)
 
#define FLOW_IS_IPV6_CLASS(f)
 
#define FLOW_IS_L3_TYPE(f)   ((f->type == VNET_FLOW_TYPE_IP4) || (f->type == VNET_FLOW_TYPE_IP6))
 
#define FLOW_IS_L4_TYPE(f)
 
#define FLOW_IS_L4_TUNNEL_TYPE(f)
 

Functions

int avf_fdir_vc_op_callback (void *vc_hdl, enum virthnl_adv_ops vc_op, void *in, u32 in_len, void *out, u32 out_len)
 
static int avf_flow_add (u32 dev_instance, vnet_flow_t *f, avf_flow_entry_t *fe)
 
int avf_flow_ops_fn (vnet_main_t *vm, vnet_flow_dev_op_t op, u32 dev_instance, u32 flow_index, uword *private_data)
 

Macro Definition Documentation

◆ FLOW_IS_ETHERNET_CLASS

#define FLOW_IS_ETHERNET_CLASS (   f)    (f->type == VNET_FLOW_TYPE_ETHERNET)

Definition at line 28 of file flow.c.

◆ FLOW_IS_IPV4_CLASS

#define FLOW_IS_IPV4_CLASS (   f)
Value:
((f->type == VNET_FLOW_TYPE_IP4) || \
(f->type == VNET_FLOW_TYPE_IP4_N_TUPLE) || \
(f->type == VNET_FLOW_TYPE_IP4_N_TUPLE_TAGGED) || \
(f->type == VNET_FLOW_TYPE_IP4_VXLAN) || \
(f->type == VNET_FLOW_TYPE_IP4_GTPC) || \
(f->type == VNET_FLOW_TYPE_IP4_GTPU) || \
(f->type == VNET_FLOW_TYPE_IP4_L2TPV3OIP) || \
(f->type == VNET_FLOW_TYPE_IP4_IPSEC_ESP) || \
(f->type == VNET_FLOW_TYPE_IP4_IPSEC_AH))
vlib_frame_t * f

Definition at line 30 of file flow.c.

◆ FLOW_IS_IPV6_CLASS

#define FLOW_IS_IPV6_CLASS (   f)
Value:
((f->type == VNET_FLOW_TYPE_IP6) || \
(f->type == VNET_FLOW_TYPE_IP6_N_TUPLE) || \
(f->type == VNET_FLOW_TYPE_IP6_N_TUPLE_TAGGED) || \
(f->type == VNET_FLOW_TYPE_IP6_VXLAN))
vlib_frame_t * f

Definition at line 41 of file flow.c.

◆ FLOW_IS_L3_TYPE

#define FLOW_IS_L3_TYPE (   f)    ((f->type == VNET_FLOW_TYPE_IP4) || (f->type == VNET_FLOW_TYPE_IP6))

Definition at line 48 of file flow.c.

◆ FLOW_IS_L4_TUNNEL_TYPE

#define FLOW_IS_L4_TUNNEL_TYPE (   f)
Value:
((f->type == VNET_FLOW_TYPE_IP4_VXLAN) || \
(f->type == VNET_FLOW_TYPE_IP6_VXLAN) || \
(f->type == VNET_FLOW_TYPE_IP4_GTPC) || \
(f->type == VNET_FLOW_TYPE_IP4_GTPU))
vlib_frame_t * f

Definition at line 59 of file flow.c.

◆ FLOW_IS_L4_TYPE

#define FLOW_IS_L4_TYPE (   f)
Value:
((f->type == VNET_FLOW_TYPE_IP4_N_TUPLE) || \
(f->type == VNET_FLOW_TYPE_IP6_N_TUPLE) || \
(f->type == VNET_FLOW_TYPE_IP4_N_TUPLE_TAGGED) || \
(f->type == VNET_FLOW_TYPE_IP6_N_TUPLE_TAGGED))
vlib_frame_t * f

Definition at line 52 of file flow.c.

Function Documentation

◆ avf_fdir_vc_op_callback()

int avf_fdir_vc_op_callback ( void *  vc_hdl,
enum virthnl_adv_ops  vc_op,
void *  in,
u32  in_len,
void *  out,
u32  out_len 
)

Definition at line 66 of file flow.c.

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

◆ avf_flow_add()

static int avf_flow_add ( u32  dev_instance,
vnet_flow_t f,
avf_flow_entry_t fe 
)
static

Definition at line 106 of file flow.c.

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

◆ avf_flow_ops_fn()

int avf_flow_ops_fn ( vnet_main_t vm,
vnet_flow_dev_op_t  op,
u32  dev_instance,
u32  flow_index,
uword private_data 
)

Definition at line 438 of file flow.c.

+ Here is the call graph for this function: