![]() |
FD.io VPP
v21.10.1-2-g0a485f517
Vector Packet Processing
|
Include dependency graph for ip4_input.c:Go to the source code of this file.
Data Structures | |
| struct | ip4_input_trace_t |
Functions | |
| static u8 * | format_ip4_input_trace (u8 *s, va_list *va) |
| static_always_inline u32 | ip4_input_set_next (u32 sw_if_index, vlib_buffer_t *b, int arc_enabled) |
| static_always_inline void | ip4_input_check_sw_if_index (vlib_main_t *vm, vlib_simple_counter_main_t *cm, u32 sw_if_index, u32 *last_sw_if_index, u32 *cnt, int *arc_enabled) |
| static uword | ip4_input_inline (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame, int verify_checksum) |
| VLIB_NODE_FN() | ip4_input_node (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame) |
| IPv4 input node. More... | |
| VLIB_NODE_FN() | ip4_input_no_checksum_node (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame) |
| static clib_error_t * | ip4_init (vlib_main_t *vm) |
Variables | |
| char * | ip4_error_strings [] |
| vlib_node_registration_t | ip4_input_node |
| (constructor) VLIB_REGISTER_NODE (ip4_input_node) More... | |
| vlib_node_registration_t | ip4_input_no_checksum_node |
| (constructor) VLIB_REGISTER_NODE (ip4_input_no_checksum_node) More... | |
Definition at line 53 of file ip4_input.c.
|
static |
| static_always_inline void ip4_input_check_sw_if_index | ( | vlib_main_t * | vm, |
| vlib_simple_counter_main_t * | cm, | ||
| u32 | sw_if_index, | ||
| u32 * | last_sw_if_index, | ||
| u32 * | cnt, | ||
| int * | arc_enabled | ||
| ) |
Definition at line 93 of file ip4_input.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlinestatic |
Definition at line 123 of file ip4_input.c.
Here is the call graph for this function:
Here is the caller graph for this function:| VLIB_NODE_FN() ip4_input_no_checksum_node | ( | vlib_main_t * | vm, |
| vlib_node_runtime_t * | node, | ||
| vlib_frame_t * | frame | ||
| ) |
| VLIB_NODE_FN() ip4_input_node | ( | vlib_main_t * | vm, |
| vlib_node_runtime_t * | node, | ||
| vlib_frame_t * | frame | ||
| ) |
IPv4 input node.
ip4-input This is the IPv4 input node: validates ip4 header checksums, verifies ip header lengths, discards pkts with expired TTLs, and sends pkts to the set of ip feature nodes configured on the rx interface.
| vm | vlib_main_t corresponding to the current thread |
| node | vlib_node_runtime_t |
| frame | vlib_frame_t whose contents should be dispatched |
Uses:
b->current_config_index corresponding to each pkt's rx sw_if_index.vnet_buffer(b)->sw_if_index[VLIB_RX]sw_if_index value of the interface that the packet was received on.Sets:
vnet_buffer(b)->ip.adj_index[VLIB_TX]Next Indices:
vnet_get_config_data (... &next0 ...); or error-drop Definition at line 364 of file ip4_input.c.
Here is the call graph for this function:| static_always_inline u32 ip4_input_set_next | ( | u32 | sw_if_index, |
| vlib_buffer_t * | b, | ||
| int | arc_enabled | ||
| ) |
Definition at line 66 of file ip4_input.c.
Here is the call graph for this function:
Here is the caller graph for this function:| char* ip4_error_strings[] |
Definition at line 378 of file ip4_input.c.
| vlib_node_registration_t ip4_input_no_checksum_node |
(constructor) VLIB_REGISTER_NODE (ip4_input_no_checksum_node)
Definition at line 409 of file ip4_input.c.
| vlib_node_registration_t ip4_input_node |
(constructor) VLIB_REGISTER_NODE (ip4_input_node)
Global ip4 input node.
Definition at line 386 of file ip4_input.c.