|
static u8 * | format_ip6_sv_reass_trace (u8 *s, va_list *args) |
|
static void | ip6_sv_reass_add_trace (vlib_main_t *vm, vlib_node_runtime_t *node, ip6_sv_reass_main_t *rm, ip6_sv_reass_t *reass, u32 bi, ip6_sv_reass_trace_operation_e action, u32 ip_proto, u16 l4_src_port, u16 l4_dst_port) |
|
static void | ip6_sv_reass_free (vlib_main_t *vm, ip6_sv_reass_main_t *rm, ip6_sv_reass_per_thread_t *rt, ip6_sv_reass_t *reass) |
|
static void | ip6_sv_reass_init (ip6_sv_reass_t *reass) |
|
static ip6_sv_reass_t * | ip6_sv_reass_find_or_create (vlib_main_t *vm, vlib_node_runtime_t *node, ip6_sv_reass_main_t *rm, ip6_sv_reass_per_thread_t *rt, ip6_sv_reass_kv_t *kv, u32 *icmp_bi, u8 *do_handoff) |
|
static ip6_sv_reass_rc_t | ip6_sv_reass_update (vlib_main_t *vm, vlib_node_runtime_t *node, ip6_sv_reass_main_t *rm, ip6_sv_reass_per_thread_t *rt, ip6_sv_reass_t *reass, u32 bi0, ip6_frag_hdr_t *frag_hdr) |
|
static bool | ip6_sv_reass_verify_upper_layer_present (vlib_node_runtime_t *node, vlib_buffer_t *b, ip6_frag_hdr_t *frag_hdr) |
|
static bool | ip6_sv_reass_verify_fragment_multiple_8 (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_buffer_t *b, ip6_frag_hdr_t *frag_hdr) |
|
static bool | ip6_sv_reass_verify_packet_size_lt_64k (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_buffer_t *b, ip6_frag_hdr_t *frag_hdr) |
|
static uword | ip6_sv_reassembly_inline (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame, bool is_feature) |
|
VLIB_NODE_FN() | ip6_sv_reass_node (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame) |
|
VLIB_NODE_FN() | ip6_sv_reass_node_feature (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame) |
|
| VNET_FEATURE_INIT (ip6_sv_reassembly_feature) |
|
static u32 | ip6_sv_reass_get_nbuckets () |
|
static int | ip6_rehash_cb (clib_bihash_kv_48_8_t *kv, void *_ctx) |
|
static void | ip6_sv_reass_set_params (u32 timeout_ms, u32 max_reassemblies, u32 max_reassembly_length, u32 expire_walk_interval_ms) |
|
vnet_api_error_t | ip6_sv_reass_set (u32 timeout_ms, u32 max_reassemblies, u32 max_reassembly_length, u32 expire_walk_interval_ms) |
| set ip6 reassembly configuration More...
|
|
vnet_api_error_t | ip6_sv_reass_get (u32 *timeout_ms, u32 *max_reassemblies, u32 *max_reassembly_length, u32 *expire_walk_interval_ms) |
| get ip6 reassembly configuration More...
|
|
static clib_error_t * | ip6_sv_reass_init_function (vlib_main_t *vm) |
|
static uword | ip6_sv_reass_walk_expired (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *f) |
|
static u8 * | format_ip6_sv_reass_key (u8 *s, va_list *args) |
|
static u8 * | format_ip6_sv_reass (u8 *s, va_list *args) |
|
static clib_error_t * | show_ip6_sv_reass (vlib_main_t *vm, unformat_input_t *input, CLIB_UNUSED(vlib_cli_command_t *lmd)) |
|
vnet_api_error_t | ip6_sv_reass_enable_disable (u32 sw_if_index, u8 enable_disable) |
|
static u8 * | format_ip6_sv_reassembly_handoff_trace (u8 *s, va_list *args) |
|
static uword | ip6_sv_reassembly_handoff_inline (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame, bool is_feature) |
|
VLIB_NODE_FN() | ip6_sv_reassembly_handoff_node (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame) |
|
VLIB_NODE_FN() | ip6_sv_reassembly_feature_handoff_node (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame) |
|
int | ip6_sv_reass_enable_disable_with_refcnt (u32 sw_if_index, int is_enable) |
|
IPv6 Shallow Virtual Reassembly.
This file contains the source code for IPv6 Shallow Virtual reassembly.
Definition in file ip6_sv_reass.c.