FD.io VPP  v21.06-3-gbb25fbf28
Vector Packet Processing
flow_api.c File Reference
+ Include dependency graph for flow_api.c:

Go to the source code of this file.

Macros

#define vl_typedefs   /* define message structures */
 
#define vl_endianfun   /* define message structures */
 
#define vl_print(handle, ...)   vlib_cli_output (handle, __VA_ARGS__)
 
#define vl_printfun
 
#define foreach_vpe_api_msg
 
#define vl_msg_name_crc_list
 

Functions

static void ipv4_addr_and_mask_convert (vl_api_ip4_address_and_mask_t *vl_api_addr, ip4_address_and_mask_t *vnet_addr)
 
static void ipv6_addr_and_mask_convert (vl_api_ip6_address_and_mask_t *vl_api_addr, ip6_address_and_mask_t *vnet_addr)
 
static void protocol_and_mask_convert (vl_api_ip_prot_and_mask_t *vl_api_protocol, ip_prot_and_mask_t *vnet_protocol)
 
static void port_and_mask_convert (vl_api_ip_port_and_mask_t *vl_api_port, ip_port_and_mask_t *vnet_port)
 
static void ipv4_flow_convert (vl_api_flow_ip4_t *vl_api_flow, vnet_flow_ip4_t *f)
 
static void ipv6_flow_convert (vl_api_flow_ip6_t *vl_api_flow, vnet_flow_ip6_t *f)
 
static void ipv4_n_tuple_flow_convert (vl_api_flow_ip4_n_tuple_t *vl_api_flow, vnet_flow_ip4_n_tuple_t *f)
 
static void ipv6_n_tuple_flow_convert (vl_api_flow_ip6_n_tuple_t *vl_api_flow, vnet_flow_ip6_n_tuple_t *f)
 
static void ipv4_n_tuple_tagged_flow_convert (vl_api_flow_ip4_n_tuple_tagged_t *vl_api_flow, vnet_flow_ip4_n_tuple_tagged_t *f)
 
static void ipv6_n_tuple_tagged_flow_convert (vl_api_flow_ip6_n_tuple_tagged_t *vl_api_flow, vnet_flow_ip6_n_tuple_tagged_t *f)
 
static void ipv4_l2tpv3oip_flow_convert (vl_api_flow_ip4_l2tpv3oip_t *vl_api_flow, vnet_flow_ip4_l2tpv3oip_t *f)
 
static void ipv4_ipsec_esp_flow_convert (vl_api_flow_ip4_ipsec_esp_t *vl_api_flow, vnet_flow_ip4_ipsec_esp_t *f)
 
static void ipv4_ipsec_ah_flow_convert (vl_api_flow_ip4_ipsec_ah_t *vl_api_flow, vnet_flow_ip4_ipsec_ah_t *f)
 
static void ipv4_vxlan_flow_convert (vl_api_flow_ip4_vxlan_t *vl_api_flow, vnet_flow_ip4_vxlan_t *f)
 
static void ipv6_vxlan_flow_convert (vl_api_flow_ip6_vxlan_t *vl_api_flow, vnet_flow_ip6_vxlan_t *f)
 
static void ipv4_gtpu_flow_convert (vl_api_flow_ip4_gtpu_t *vl_api_flow, vnet_flow_ip4_gtpu_t *f)
 
static void ipv4_gtpc_flow_convert (vl_api_flow_ip4_gtpc_t *vl_api_flow, vnet_flow_ip4_gtpc_t *f)
 
static void vl_api_flow_add_t_handler (vl_api_flow_add_t *mp)
 
static void vl_api_flow_del_t_handler (vl_api_flow_del_t *mp)
 
static void vl_api_flow_enable_t_handler (vl_api_flow_enable_t *mp)
 
static void vl_api_flow_disable_t_handler (vl_api_flow_disable_t *mp)
 
static void setup_message_id_table (api_main_t *am)
 
static clib_error_thw_flow_api_hookup (vlib_main_t *vm)
 
 VLIB_API_INIT_FUNCTION (hw_flow_api_hookup)
 

Macro Definition Documentation

◆ foreach_vpe_api_msg

#define foreach_vpe_api_msg
Value:
_(FLOW_ADD, flow_add) \
_(FLOW_DEL, flow_del) \
_(FLOW_ENABLE, flow_enable) \
_(FLOW_DISABLE, flow_disable)

Definition at line 49 of file flow_api.c.

◆ vl_endianfun

#define vl_endianfun   /* define message structures */

Definition at line 37 of file flow_api.c.

◆ vl_msg_name_crc_list

#define vl_msg_name_crc_list

Definition at line 354 of file flow_api.c.

◆ vl_print

#define vl_print (   handle,
  ... 
)    vlib_cli_output (handle, __VA_ARGS__)

Definition at line 42 of file flow_api.c.

◆ vl_printfun

#define vl_printfun

Definition at line 43 of file flow_api.c.

◆ vl_typedefs

#define vl_typedefs   /* define message structures */

Definition at line 33 of file flow_api.c.

Function Documentation

◆ hw_flow_api_hookup()

static clib_error_t* hw_flow_api_hookup ( vlib_main_t vm)
static

Definition at line 376 of file flow_api.c.

+ Here is the call graph for this function:

◆ ipv4_addr_and_mask_convert()

static void ipv4_addr_and_mask_convert ( vl_api_ip4_address_and_mask_t *  vl_api_addr,
ip4_address_and_mask_t vnet_addr 
)
inlinestatic

Definition at line 56 of file flow_api.c.

+ Here is the caller graph for this function:

◆ ipv4_flow_convert()

static void ipv4_flow_convert ( vl_api_flow_ip4_t *  vl_api_flow,
vnet_flow_ip4_t *  f 
)
inlinestatic

Definition at line 86 of file flow_api.c.

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

◆ ipv4_gtpc_flow_convert()

static void ipv4_gtpc_flow_convert ( vl_api_flow_ip4_gtpc_t *  vl_api_flow,
vnet_flow_ip4_gtpc_t *  f 
)
inlinestatic

Definition at line 221 of file flow_api.c.

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

◆ ipv4_gtpu_flow_convert()

static void ipv4_gtpu_flow_convert ( vl_api_flow_ip4_gtpu_t *  vl_api_flow,
vnet_flow_ip4_gtpu_t *  f 
)
inlinestatic

Definition at line 207 of file flow_api.c.

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

◆ ipv4_ipsec_ah_flow_convert()

static void ipv4_ipsec_ah_flow_convert ( vl_api_flow_ip4_ipsec_ah_t *  vl_api_flow,
vnet_flow_ip4_ipsec_ah_t *  f 
)
inlinestatic

Definition at line 168 of file flow_api.c.

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

◆ ipv4_ipsec_esp_flow_convert()

static void ipv4_ipsec_esp_flow_convert ( vl_api_flow_ip4_ipsec_esp_t *  vl_api_flow,
vnet_flow_ip4_ipsec_esp_t *  f 
)
inlinestatic

Definition at line 157 of file flow_api.c.

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

◆ ipv4_l2tpv3oip_flow_convert()

static void ipv4_l2tpv3oip_flow_convert ( vl_api_flow_ip4_l2tpv3oip_t *  vl_api_flow,
vnet_flow_ip4_l2tpv3oip_t *  f 
)
inlinestatic

Definition at line 146 of file flow_api.c.

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

◆ ipv4_n_tuple_flow_convert()

static void ipv4_n_tuple_flow_convert ( vl_api_flow_ip4_n_tuple_t *  vl_api_flow,
vnet_flow_ip4_n_tuple_t *  f 
)
inlinestatic

Definition at line 104 of file flow_api.c.

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

◆ ipv4_n_tuple_tagged_flow_convert()

static void ipv4_n_tuple_tagged_flow_convert ( vl_api_flow_ip4_n_tuple_tagged_t *  vl_api_flow,
vnet_flow_ip4_n_tuple_tagged_t *  f 
)
inlinestatic

Definition at line 128 of file flow_api.c.

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

◆ ipv4_vxlan_flow_convert()

static void ipv4_vxlan_flow_convert ( vl_api_flow_ip4_vxlan_t *  vl_api_flow,
vnet_flow_ip4_vxlan_t *  f 
)
inlinestatic

Definition at line 179 of file flow_api.c.

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

◆ ipv6_addr_and_mask_convert()

static void ipv6_addr_and_mask_convert ( vl_api_ip6_address_and_mask_t *  vl_api_addr,
ip6_address_and_mask_t vnet_addr 
)
inlinestatic

Definition at line 63 of file flow_api.c.

+ Here is the caller graph for this function:

◆ ipv6_flow_convert()

static void ipv6_flow_convert ( vl_api_flow_ip6_t *  vl_api_flow,
vnet_flow_ip6_t *  f 
)
static

Definition at line 95 of file flow_api.c.

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

◆ ipv6_n_tuple_flow_convert()

static void ipv6_n_tuple_flow_convert ( vl_api_flow_ip6_n_tuple_t *  vl_api_flow,
vnet_flow_ip6_n_tuple_t *  f 
)
static

Definition at line 116 of file flow_api.c.

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

◆ ipv6_n_tuple_tagged_flow_convert()

static void ipv6_n_tuple_tagged_flow_convert ( vl_api_flow_ip6_n_tuple_tagged_t *  vl_api_flow,
vnet_flow_ip6_n_tuple_tagged_t *  f 
)
inlinestatic

Definition at line 137 of file flow_api.c.

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

◆ ipv6_vxlan_flow_convert()

static void ipv6_vxlan_flow_convert ( vl_api_flow_ip6_vxlan_t *  vl_api_flow,
vnet_flow_ip6_vxlan_t *  f 
)
inlinestatic

Definition at line 193 of file flow_api.c.

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

◆ port_and_mask_convert()

static void port_and_mask_convert ( vl_api_ip_port_and_mask_t *  vl_api_port,
ip_port_and_mask_t vnet_port 
)
inlinestatic

Definition at line 78 of file flow_api.c.

+ Here is the caller graph for this function:

◆ protocol_and_mask_convert()

static void protocol_and_mask_convert ( vl_api_ip_prot_and_mask_t *  vl_api_protocol,
ip_prot_and_mask_t vnet_protocol 
)
inlinestatic

Definition at line 70 of file flow_api.c.

+ Here is the caller graph for this function:

◆ setup_message_id_table()

static void setup_message_id_table ( api_main_t am)
static

Definition at line 368 of file flow_api.c.

+ Here is the caller graph for this function:

◆ vl_api_flow_add_t_handler()

static void vl_api_flow_add_t_handler ( vl_api_flow_add_t mp)
static

Definition at line 235 of file flow_api.c.

+ Here is the call graph for this function:

◆ vl_api_flow_del_t_handler()

static void vl_api_flow_del_t_handler ( vl_api_flow_del_t mp)
static

Definition at line 317 of file flow_api.c.

+ Here is the call graph for this function:

◆ vl_api_flow_disable_t_handler()

static void vl_api_flow_disable_t_handler ( vl_api_flow_disable_t mp)
static

Definition at line 342 of file flow_api.c.

+ Here is the call graph for this function:

◆ vl_api_flow_enable_t_handler()

static void vl_api_flow_enable_t_handler ( vl_api_flow_enable_t mp)
static

Definition at line 329 of file flow_api.c.

+ Here is the call graph for this function:

◆ VLIB_API_INIT_FUNCTION()

VLIB_API_INIT_FUNCTION ( hw_flow_api_hookup  )