![]() |
FD.io VPP
v17.01-9-ge7dcee4
Vector Packet Processing
|
Include dependency graph for snat.h:
This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Data Structures | |
| struct | snat_session_key_t |
| struct | snat_user_key_t |
| struct | snat_static_mapping_key_t |
| struct | snat_user_t |
| struct | snat_address_t |
| struct | snat_static_mapping_t |
| struct | snat_interface_t |
| struct | snat_main_per_thread_data_t |
| struct | snat_main_t |
| struct | snat_runtime_t |
| struct | icmp_echo_header_t |
Macros | |
| #define | SNAT_SESSION_FLAG_STATIC_MAPPING 1 |
| #define | snat_is_session_static(s) s->flags & SNAT_SESSION_FLAG_STATIC_MAPPING |
| Check if SNAT session is created from static mapping. More... | |
Enumerations | |
| enum | snat_protocol_t { SNAT_PROTOCOL_UDP = 0, SNAT_PROTOCOL_TCP, SNAT_PROTOCOL_ICMP } |
Functions | |
| typedef | CLIB_PACKED (struct{snat_session_key_t out2in;snat_session_key_t in2out;u32 flags;u32 per_user_index;u32 per_user_list_head_index;f64 last_heard;u64 total_bytes;u32 total_pkts;u32 outside_address_index;}) snat_session_t |
| void | snat_free_outside_address_and_port (snat_main_t *sm, snat_session_key_t *k, u32 address_index) |
| int | snat_alloc_outside_address_and_port (snat_main_t *sm, snat_session_key_t *k, u32 *address_indexp) |
| int | snat_static_mapping_match (snat_main_t *sm, snat_session_key_t match, snat_session_key_t *mapping, u8 by_external) |
| Match SNAT static mapping. More... | |
Variables | |
| snat_main_t | snat_main |
| vlib_node_registration_t | snat_in2out_node |
| (constructor) VLIB_REGISTER_NODE (snat_in2out_node) More... | |
| vlib_node_registration_t | snat_out2in_node |
| (constructor) VLIB_REGISTER_NODE (snat_out2in_node) More... | |
| vlib_node_registration_t | snat_in2out_fast_node |
| (constructor) VLIB_REGISTER_NODE (snat_in2out_fast_node) More... | |
| vlib_node_registration_t | snat_out2in_fast_node |
| (constructor) VLIB_REGISTER_NODE (snat_out2in_fast_node) More... | |
| vlib_node_registration_t | snat_in2out_worker_handoff_node |
| (constructor) VLIB_REGISTER_NODE (snat_in2out_worker_handoff_node) More... | |
| vlib_node_registration_t | snat_out2in_worker_handoff_node |
| (constructor) VLIB_REGISTER_NODE (snat_out2in_worker_handoff_node) More... | |
| format_function_t | format_snat_user |
| #define snat_is_session_static | ( | s | ) | s->flags & SNAT_SESSION_FLAG_STATIC_MAPPING |
| enum snat_protocol_t |
| typedef CLIB_PACKED | ( | struct{snat_session_key_t out2in;snat_session_key_t in2out;u32 flags;u32 per_user_index;u32 per_user_list_head_index;f64 last_heard;u64 total_bytes;u32 total_pkts;u32 outside_address_index;} | ) |
| int snat_alloc_outside_address_and_port | ( | snat_main_t * | sm, |
| snat_session_key_t * | k, | ||
| u32 * | address_indexp | ||
| ) |
| void snat_free_outside_address_and_port | ( | snat_main_t * | sm, |
| snat_session_key_t * | k, | ||
| u32 | address_index | ||
| ) |
| int snat_static_mapping_match | ( | snat_main_t * | sm, |
| snat_session_key_t | match, | ||
| snat_session_key_t * | mapping, | ||
| u8 | by_external | ||
| ) |
Match SNAT static mapping.
| sm | SNAT main. |
| match | Address and port to match. |
| mapping | External or local address and port of the matched mapping. |
| by_external | If 0 match by local address otherwise match by external address. |
Definition at line 1242 of file snat.c.
Here is the caller graph for this function:| format_function_t format_snat_user |
| vlib_node_registration_t snat_in2out_fast_node |
| vlib_node_registration_t snat_in2out_node |
| vlib_node_registration_t snat_in2out_worker_handoff_node |
| snat_main_t snat_main |
Definition at line 42 of file jvpp_snat.h.
| vlib_node_registration_t snat_out2in_fast_node |
| vlib_node_registration_t snat_out2in_node |
| vlib_node_registration_t snat_out2in_worker_handoff_node |