![]() |
FD.io VPP
v17.04-9-g99c0734
Vector Packet Processing
|
Per-packet IPFIX flow record generator plugin. More...
Include dependency graph for flowperpkt.c:Go to the source code of this file.
Macros | |
| #define | vl_typedefs |
| #define | vl_endianfun |
| #define | vl_print(handle, ...) vlib_cli_output (handle, __VA_ARGS__) |
| #define | vl_printfun |
| #define | vl_api_version(n, v) static u32 api_version=(v); |
| #define | REPLY_MSG_ID_BASE fm->msg_id_base |
| #define | FINISH |
| #define | foreach_flowperpkt_plugin_api_msg _(FLOWPERPKT_TX_INTERFACE_ADD_DEL, flowperpkt_tx_interface_add_del) |
| #define | vl_msg_name_crc_list |
Variables | |
| flowperpkt_main_t | flowperpkt_main |
| static vlib_cli_command_t | flowperpkt_enable_disable_command |
| (constructor) VLIB_CLI_COMMAND (flowperpkt_enable_disable_command) More... | |
Per-packet IPFIX flow record generator plugin.
This file implements vpp plugin registration mechanics, debug CLI, and binary API handling.
Definition in file flowperpkt.c.
| #define FINISH |
Definition at line 82 of file flowperpkt.c.
| #define foreach_flowperpkt_plugin_api_msg _(FLOWPERPKT_TX_INTERFACE_ADD_DEL, flowperpkt_tx_interface_add_del) |
Definition at line 445 of file flowperpkt.c.
| #define REPLY_MSG_ID_BASE fm->msg_id_base |
Definition at line 61 of file flowperpkt.c.
Definition at line 57 of file flowperpkt.c.
| #define vl_endianfun |
Definition at line 44 of file flowperpkt.c.
| #define vl_msg_name_crc_list |
Definition at line 551 of file flowperpkt.c.
| #define vl_print | ( | handle, | |
| ... | |||
| ) | vlib_cli_output (handle, __VA_ARGS__) |
Definition at line 49 of file flowperpkt.c.
| #define vl_printfun |
Definition at line 50 of file flowperpkt.c.
| #define vl_typedefs |
Definition at line 39 of file flowperpkt.c.
| vlib_frame_t* flowperpkt_data_callback_ipv4 | ( | flow_report_main_t * | frm, |
| flow_report_t * | fr, | ||
| vlib_frame_t * | f, | ||
| u32 * | to_next, | ||
| u32 | node_index | ||
| ) |
Flush accumulated data.
| frm | flow_report_main_t * |
| fr | flow_report_t * |
| f | vlib_frame_t * |
Notes: This function must simply return the incoming frame, or no template packets will be sent.
Definition at line 320 of file flowperpkt.c.
Here is the call graph for this function:
Here is the caller graph for this function:| vlib_frame_t* flowperpkt_data_callback_l2 | ( | flow_report_main_t * | frm, |
| flow_report_t * | fr, | ||
| vlib_frame_t * | f, | ||
| u32 * | to_next, | ||
| u32 | node_index | ||
| ) |
Definition at line 330 of file flowperpkt.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Set up the API message handling tables.
| vm | vlib_main_t * vlib main data structure pointer |
Definition at line 570 of file flowperpkt.c.
Here is the call graph for this function:
|
static |
Set up the API message handling tables.
| vm | vlib_main_t * vlib main data structure pointer |
Definition at line 534 of file flowperpkt.c.
Here is the caller graph for this function:
|
inlinestatic |
Create an IPFIX template packet rewrite string.
| frm | flow_report_main_t * |
| fr | flow_report_t * |
| collector_address | ip4_address_t * the IPFIX collector address |
| src_address | ip4_address_t * the source address we should use |
| collector_port | u16 the collector port we should use, host byte order |
Definition at line 98 of file flowperpkt.c.
Here is the call graph for this function:
Here is the caller graph for this function:| u8* flowperpkt_template_rewrite_ipv4 | ( | flow_report_main_t * | frm, |
| flow_report_t * | fr, | ||
| ip4_address_t * | collector_address, | ||
| ip4_address_t * | src_address, | ||
| u16 | collector_port | ||
| ) |
Definition at line 285 of file flowperpkt.c.
Here is the call graph for this function:
Here is the caller graph for this function:| u8* flowperpkt_template_rewrite_l2 | ( | flow_report_main_t * | frm, |
| flow_report_t * | fr, | ||
| ip4_address_t * | collector_address, | ||
| ip4_address_t * | src_address, | ||
| u16 | collector_port | ||
| ) |
Definition at line 297 of file flowperpkt.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
configure / deconfigure the IPFIX flow-per-packet
| fm | flowperpkt_main_t * fm |
| sw_if_index | u32 the desired interface |
| is_add | int 1 to enable the feature, 0 to disable it |
Definition at line 347 of file flowperpkt.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
|
static |
| void vl_api_flowperpkt_tx_interface_add_del_t_handler | ( | vl_api_flowperpkt_tx_interface_add_del_t * | mp | ) |
API message handler.
| mp | vl_api_flowperpkt_tx_interface_add_del_t * mp the api message |
Definition at line 403 of file flowperpkt.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
API message custom-dump function.
| mp | vl_api_flowperpkt_tx_interface_add_del_t * mp the api message |
| handle | void * print function handle |
Definition at line 433 of file flowperpkt.c.
Here is the call graph for this function:
Here is the caller graph for this function:| VLIB_PLUGIN_REGISTER | ( | ) |
| VNET_FEATURE_INIT | ( | flow_perpacket_ipv4 | , |
| static | |||
| ) |
| VNET_FEATURE_INIT | ( | flow_perpacket_l2 | , |
| static | |||
| ) |
|
static |
(constructor) VLIB_CLI_COMMAND (flowperpkt_enable_disable_command)
Definition at line 520 of file flowperpkt.c.
| flowperpkt_main_t flowperpkt_main |
Definition at line 54 of file flowperpkt.c.