Go to the source code of this file.
|
typedef struct ip4_mfib_t | ip4_mfib_t |
|
typedef void() | ip4_add_del_interface_address_function_t(struct ip4_main_t *im, uword opaque, u32 sw_if_index, ip4_address_t *address, u32 address_length, u32 if_address_index, u32 is_del) |
|
typedef void() | ip4_table_bind_function_t(struct ip4_main_t *im, uword opaque, u32 sw_if_index, u32 new_fib_index, u32 old_fib_index) |
|
typedef struct ip4_main_t | ip4_main_t |
| IPv4 main type. More...
|
|
|
static uword | ip4_destination_matches_route (const ip4_main_t *im, const ip4_address_t *key, const ip4_address_t *dest, uword dest_length) |
|
static uword | ip4_destination_matches_interface (ip4_main_t *im, ip4_address_t *key, ip_interface_address_t *ia) |
|
static int | ip4_src_address_for_packet (ip_lookup_main_t *lm, u32 sw_if_index, ip4_address_t *src) |
|
static ip4_address_t * | ip4_interface_address_matching_destination (ip4_main_t *im, ip4_address_t *dst, u32 sw_if_index, ip_interface_address_t **result_ia) |
|
ip4_address_t * | ip4_interface_first_address (ip4_main_t *im, u32 sw_if_index, ip_interface_address_t **result_ia) |
|
clib_error_t * | ip4_add_del_interface_address (vlib_main_t *vm, u32 sw_if_index, ip4_address_t *address, u32 address_length, u32 is_del) |
|
void | ip4_directed_broadcast (u32 sw_if_index, u8 enable) |
|
void | ip4_sw_interface_enable_disable (u32 sw_if_index, u32 is_enable) |
|
int | ip4_address_compare (ip4_address_t *a1, ip4_address_t *a2) |
|
clib_error_t * | ip4_probe_neighbor (vlib_main_t *vm, ip4_address_t *dst, u32 sw_if_index, u8 refresh) |
|
clib_error_t * | ip4_set_arp_limit (u32 arp_limit) |
|
uword | ip4_udp_register_listener (vlib_main_t *vm, u16 dst_port, u32 next_node_index) |
|
void | ip4_icmp_register_type (vlib_main_t *vm, icmp4_type_t type, u32 node_index) |
|
u16 | ip4_tcp_udp_compute_checksum (vlib_main_t *vm, vlib_buffer_t *p0, ip4_header_t *ip0) |
|
void | ip4_register_protocol (u32 protocol, u32 node_index) |
|
int | vnet_set_ip4_flow_hash (u32 table_id, flow_hash_config_t flow_hash_config) |
|
int | vnet_set_ip4_classify_intfc (vlib_main_t *vm, u32 sw_if_index, u32 table_index) |
|
void | ip4_punt_policer_add_del (u8 is_add, u32 policer_index) |
|
void | ip4_punt_redirect_add (u32 rx_sw_if_index, u32 tx_sw_if_index, ip46_address_t *nh) |
|
void | ip4_punt_redirect_del (u32 rx_sw_if_index) |
|
static u32 | ip4_compute_flow_hash (const ip4_header_t *ip, flow_hash_config_t flow_hash_config) |
|
void | ip4_forward_next_trace (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame, vlib_rx_or_tx_t which_adj_index) |
|
u8 * | format_ip4_forward_next_trace (u8 *s, va_list *args) |
|
u32 | ip4_tcp_udp_validate_checksum (vlib_main_t *vm, vlib_buffer_t *p0) |
|
static void * | vlib_buffer_push_ip4 (vlib_main_t *vm, vlib_buffer_t *b, ip4_address_t *src, ip4_address_t *dst, int proto, u8 csum_offload) |
| Push IPv4 header to buffer. More...
|
|
◆ ARP_THROTTLE_BITS
#define ARP_THROTTLE_BITS (512) |
◆ IP_DF
#define IP_DF 0x4000 /* don't fragment */ |
◆ ip4_add_del_interface_address_function_t
Definition at line 65 of file ip4.h.
◆ ip4_main_t
IPv4 main type.
State of IPv4 VPP processing including:
- FIBs
- Feature indices used in feature topological sort
- Feature node run time references
◆ ip4_mfib_t
◆ ip4_table_bind_function_t
Definition at line 78 of file ip4.h.
◆ format_ip4_forward_next_trace()
u8* format_ip4_forward_next_trace |
( |
u8 * |
s, |
|
|
va_list * |
args |
|
) |
| |
◆ ip4_add_del_interface_address()
◆ ip4_address_compare()
◆ ip4_compute_flow_hash()
◆ ip4_destination_matches_interface()
◆ ip4_destination_matches_route()
◆ ip4_directed_broadcast()
void ip4_directed_broadcast |
( |
u32 |
sw_if_index, |
|
|
u8 |
enable |
|
) |
| |
◆ ip4_forward_next_trace()
◆ ip4_icmp_register_type()
◆ ip4_interface_address_matching_destination()
◆ ip4_interface_first_address()
◆ ip4_probe_neighbor()
◆ ip4_punt_policer_add_del()
void ip4_punt_policer_add_del |
( |
u8 |
is_add, |
|
|
u32 |
policer_index |
|
) |
| |
◆ ip4_punt_redirect_add()
void ip4_punt_redirect_add |
( |
u32 |
rx_sw_if_index, |
|
|
u32 |
tx_sw_if_index, |
|
|
ip46_address_t * |
nh |
|
) |
| |
◆ ip4_punt_redirect_del()
void ip4_punt_redirect_del |
( |
u32 |
rx_sw_if_index | ) |
|
◆ ip4_register_protocol()
void ip4_register_protocol |
( |
u32 |
protocol, |
|
|
u32 |
node_index |
|
) |
| |
◆ ip4_set_arp_limit()
◆ ip4_src_address_for_packet()
◆ ip4_sw_interface_enable_disable()
void ip4_sw_interface_enable_disable |
( |
u32 |
sw_if_index, |
|
|
u32 |
is_enable |
|
) |
| |
◆ ip4_tcp_udp_compute_checksum()
◆ ip4_tcp_udp_validate_checksum()
◆ ip4_udp_register_listener()
◆ vlib_buffer_push_ip4()
Push IPv4 header to buffer.
This does not support fragmentation.
- Parameters
-
vm | - vlib_main |
b | - buffer to write the header to |
src | - source IP |
dst | - destination IP |
prot | - payload proto |
- Returns
- - pointer to start of IP header
Definition at line 370 of file ip4.h.
◆ vnet_set_ip4_classify_intfc()
int vnet_set_ip4_classify_intfc |
( |
vlib_main_t * |
vm, |
|
|
u32 |
sw_if_index, |
|
|
u32 |
table_index |
|
) |
| |
◆ vnet_set_ip4_flow_hash()
◆ ip4_arp_node
(constructor) VLIB_REGISTER_NODE (ip4_arp_node)
Definition at line 1939 of file ip4_forward.c.
◆ ip4_glean_node
(constructor) VLIB_REGISTER_NODE (ip4_glean_node)
Definition at line 1953 of file ip4_forward.c.
◆ ip4_input_node
Global ip4 input node.
Errors get attached to ip4 input node.
Global ip4 input node.
Definition at line 317 of file ip4_input.c.
◆ ip4_local_node
(constructor) VLIB_REGISTER_NODE (ip4_local_node)
Definition at line 1659 of file ip4_forward.c.
◆ ip4_lookup_node
(constructor) VLIB_REGISTER_NODE (ip4_lookup_node)
Definition at line 104 of file ip4_forward.c.
◆ ip4_main
◆ ip4_midchain_node
(constructor) VLIB_REGISTER_NODE (ip4_midchain_node)
Definition at line 2642 of file ip4_forward.c.
◆ ip4_rewrite_local_node
◆ ip4_rewrite_mcast_node
(constructor) VLIB_REGISTER_NODE (ip4_rewrite_mcast_node)
Definition at line 2626 of file ip4_forward.c.
◆ ip4_rewrite_node
(constructor) VLIB_REGISTER_NODE (ip4_rewrite_node)
Definition at line 2604 of file ip4_forward.c.
◆ serialize_vnet_ip4_main
◆ unserialize_vnet_ip4_main