FD.io VPP  v19.04.1-1-ge4a0f9f
Vector Packet Processing
map.c File Reference
+ Include dependency graph for map.c:

Go to the source code of this file.

Macros

#define map_ip4_reass_pool_index(r)   (r - map_main.ip4_reass_pool)
 
#define map_ip6_reass_pool_index(r)   (r - map_main.ip6_reass_pool)
 

Functions

static void map_save_extras (u32 map_domain_index, char *tag)
 
static void map_free_extras (u32 map_domain_index)
 
int map_create_domain (ip4_address_t *ip4_prefix, u8 ip4_prefix_len, ip6_address_t *ip6_prefix, u8 ip6_prefix_len, ip6_address_t *ip6_src, u8 ip6_src_len, u8 ea_bits_len, u8 psid_offset, u8 psid_length, u32 *map_domain_index, u16 mtu, u8 flags, char *tag)
 
int map_delete_domain (u32 map_domain_index)
 
int map_add_del_psid (u32 map_domain_index, u16 psid, ip6_address_t *tep, bool is_add)
 
static void map_pre_resolve_init (map_main_pre_resolved_t *pr)
 
static u8format_map_pre_resolve (u8 *s, va_list *ap)
 
static void map_last_lock_gone (fib_node_t *node)
 Function definition to inform the FIB node that its last lock has gone. More...
 
static map_main_pre_resolved_tmap_from_fib_node (fib_node_t *node)
 
static void map_stack (map_main_pre_resolved_t *pr)
 
static fib_node_back_walk_rc_t map_back_walk (fib_node_t *node, fib_node_back_walk_ctx_t *ctx)
 Function definition to backwalk a FIB node. More...
 
static fib_node_tmap_fib_node_get (fib_node_index_t index)
 Function definition to get a FIB node from its index. More...
 
static void map_fib_resolve (map_main_pre_resolved_t *pr, fib_protocol_t proto, u8 len, const ip46_address_t *addr)
 
static void map_fib_unresolve (map_main_pre_resolved_t *pr, fib_protocol_t proto, u8 len, const ip46_address_t *addr)
 
void map_pre_resolve (ip4_address_t *ip4, ip6_address_t *ip6, bool is_del)
 
static clib_error_tmap_security_check_command_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
 
static clib_error_tmap_add_domain_command_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
 
static clib_error_tmap_del_domain_command_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
 
static clib_error_tmap_add_rule_command_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
 
static clib_error_tmap_pre_resolve_command_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
 
static clib_error_tmap_icmp_relay_source_address_command_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
 
static clib_error_tmap_icmp_unreachables_command_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
 
static clib_error_tmap_fragment_command_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
 
static clib_error_tmap_traffic_class_command_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
 
static char * map_flags_to_string (u32 flags)
 
static u8format_map_domain (u8 *s, va_list *args)
 
static u8format_map_ip4_reass (u8 *s, va_list *args)
 
static u8format_map_ip6_reass (u8 *s, va_list *args)
 
static clib_error_tshow_map_domain_command_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
 
static clib_error_tshow_map_fragments_command_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
 
u64 map_error_counter_get (u32 node_index, map_error_t map_error)
 
static clib_error_tshow_map_stats_command_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
 
static clib_error_tmap_params_reass_command_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
 
static clib_error_tmap_if_command_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
 
u8format_map_trace (u8 *s, va_list *args)
 
static_always_inline map_ip4_reass_tmap_ip4_reass_lookup (map_ip4_reass_key_t *k, u32 bucket, f64 now)
 
void map_ip4_reass_free (map_ip4_reass_t *r, u32 **pi_to_drop)
 
map_ip4_reass_tmap_ip4_reass_get (u32 src, u32 dst, u16 fragment_id, u8 protocol, u32 **pi_to_drop)
 
int map_ip4_reass_add_fragment (map_ip4_reass_t *r, u32 pi)
 
static_always_inline map_ip6_reass_tmap_ip6_reass_lookup (map_ip6_reass_key_t *k, u32 bucket, f64 now)
 
void map_ip6_reass_free (map_ip6_reass_t *r, u32 **pi_to_drop)
 
map_ip6_reass_tmap_ip6_reass_get (ip6_address_t *src, ip6_address_t *dst, u32 fragment_id, u8 protocol, u32 **pi_to_drop)
 
int map_ip6_reass_add_fragment (map_ip6_reass_t *r, u32 pi, u16 data_offset, u16 next_data_offset, u8 *data_start, u16 data_len)
 
void map_ip4_reass_reinit (u32 *trashed_reass, u32 *dropped_packets)
 
u8 map_get_ht_log2len (f32 ht_ratio, u16 pool_size)
 
int map_ip4_reass_conf_ht_ratio (f32 ht_ratio, u32 *trashed_reass, u32 *dropped_packets)
 
int map_ip4_reass_conf_pool_size (u16 pool_size, u32 *trashed_reass, u32 *dropped_packets)
 
int map_ip4_reass_conf_lifetime (u16 lifetime_ms)
 
int map_ip4_reass_conf_buffers (u32 buffers)
 
void map_ip6_reass_reinit (u32 *trashed_reass, u32 *dropped_packets)
 
int map_ip6_reass_conf_ht_ratio (f32 ht_ratio, u32 *trashed_reass, u32 *dropped_packets)
 
int map_ip6_reass_conf_pool_size (u16 pool_size, u32 *trashed_reass, u32 *dropped_packets)
 
int map_ip6_reass_conf_lifetime (u16 lifetime_ms)
 
int map_ip6_reass_conf_buffers (u32 buffers)
 
static clib_error_tmap_tcp_mss_command_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
 
 VLIB_PLUGIN_REGISTER ()
 
clib_error_tmap_init (vlib_main_t *vm)
 

Variables

map_main_t map_main
 
map_main_pre_resolved_t pre_resolved [FIB_PROTOCOL_MAX]
 Pre-resolved per-protocol global next-hops. More...
 
static const fib_node_vft_t map_vft
 
static vlib_cli_command_t map_ip4_reass_lifetime_command
 (constructor) VLIB_CLI_COMMAND (map_ip4_reass_lifetime_command) More...
 
static vlib_cli_command_t map_traffic_class_command
 (constructor) VLIB_CLI_COMMAND (map_traffic_class_command) More...
 
static vlib_cli_command_t map_tcp_mss_command
 (constructor) VLIB_CLI_COMMAND (map_tcp_mss_command) More...
 
static vlib_cli_command_t map_pre_resolve_command
 (constructor) VLIB_CLI_COMMAND (map_pre_resolve_command) More...
 
static vlib_cli_command_t map_security_check_command
 (constructor) VLIB_CLI_COMMAND (map_security_check_command) More...
 
static vlib_cli_command_t map_icmp_relay_source_address_command
 (constructor) VLIB_CLI_COMMAND (map_icmp_relay_source_address_command) More...
 
static vlib_cli_command_t map_icmp_unreachables_command
 (constructor) VLIB_CLI_COMMAND (map_icmp_unreachables_command) More...
 
static vlib_cli_command_t map_fragment_command
 (constructor) VLIB_CLI_COMMAND (map_fragment_command) More...
 
static vlib_cli_command_t map_add_domain_command
 (constructor) VLIB_CLI_COMMAND (map_add_domain_command) More...
 
static vlib_cli_command_t map_add_rule_command
 (constructor) VLIB_CLI_COMMAND (map_add_rule_command) More...
 
static vlib_cli_command_t map_del_command
 (constructor) VLIB_CLI_COMMAND (map_del_command) More...
 
static vlib_cli_command_t show_map_domain_command
 (constructor) VLIB_CLI_COMMAND (show_map_domain_command) More...
 
static vlib_cli_command_t show_map_stats_command
 (constructor) VLIB_CLI_COMMAND (show_map_stats_command) More...
 
static vlib_cli_command_t show_map_fragments_command
 (constructor) VLIB_CLI_COMMAND (show_map_fragments_command) More...
 
static vlib_cli_command_t map_if_command
 (constructor) VLIB_CLI_COMMAND (map_if_command) More...
 

Macro Definition Documentation

#define map_ip4_reass_pool_index (   r)    (r - map_main.ip4_reass_pool)

Definition at line 1401 of file map.c.

#define map_ip6_reass_pool_index (   r)    (r - map_main.ip6_reass_pool)

Definition at line 1564 of file map.c.

Function Documentation

static u8* format_map_domain ( u8 s,
va_list *  args 
)
static

Definition at line 924 of file map.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static u8* format_map_ip4_reass ( u8 s,
va_list *  args 
)
static

Definition at line 982 of file map.c.

+ Here is the call graph for this function:

static u8* format_map_ip6_reass ( u8 s,
va_list *  args 
)
static

Definition at line 1000 of file map.c.

+ Here is the call graph for this function:

static u8* format_map_pre_resolve ( u8 s,
va_list *  ap 
)
static

Definition at line 298 of file map.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u8* format_map_trace ( u8 s,
va_list *  args 
)

Definition at line 1367 of file map.c.

+ Here is the call graph for this function:

int map_add_del_psid ( u32  map_domain_index,
u16  psid,
ip6_address_t tep,
bool  is_add 
)

Definition at line 240 of file map.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static clib_error_t* map_add_domain_command_fn ( vlib_main_t vm,
unformat_input_t input,
vlib_cli_command_t cmd 
)
static

Definition at line 520 of file map.c.

+ Here is the call graph for this function:

static clib_error_t* map_add_rule_command_fn ( vlib_main_t vm,
unformat_input_t input,
vlib_cli_command_t cmd 
)
static

Definition at line 636 of file map.c.

+ Here is the call graph for this function:

static fib_node_back_walk_rc_t map_back_walk ( fib_node_t node,
fib_node_back_walk_ctx_t ctx 
)
static

Function definition to backwalk a FIB node.

Definition at line 355 of file map.c.

+ Here is the call graph for this function:

int map_create_domain ( ip4_address_t ip4_prefix,
u8  ip4_prefix_len,
ip6_address_t ip6_prefix,
u8  ip6_prefix_len,
ip6_address_t ip6_src,
u8  ip6_src_len,
u8  ea_bits_len,
u8  psid_offset,
u8  psid_length,
u32 map_domain_index,
u16  mtu,
u8  flags,
char *  tag 
)

Definition at line 110 of file map.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static clib_error_t* map_del_domain_command_fn ( vlib_main_t vm,
unformat_input_t input,
vlib_cli_command_t cmd 
)
static

Definition at line 597 of file map.c.

+ Here is the call graph for this function:

int map_delete_domain ( u32  map_domain_index)

Definition at line 209 of file map.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u64 map_error_counter_get ( u32  node_index,
map_error_t  map_error 
)

Definition at line 1092 of file map.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static fib_node_t* map_fib_node_get ( fib_node_index_t  index)
static

Function definition to get a FIB node from its index.

Definition at line 366 of file map.c.

static void map_fib_resolve ( map_main_pre_resolved_t pr,
fib_protocol_t  proto,
u8  len,
const ip46_address_t *  addr 
)
static

Definition at line 382 of file map.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void map_fib_unresolve ( map_main_pre_resolved_t pr,
fib_protocol_t  proto,
u8  len,
const ip46_address_t *  addr 
)
static

Definition at line 399 of file map.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static char* map_flags_to_string ( u32  flags)
static

Definition at line 916 of file map.c.

+ Here is the caller graph for this function:

static clib_error_t* map_fragment_command_fn ( vlib_main_t vm,
unformat_input_t input,
vlib_cli_command_t cmd 
)
static

Definition at line 814 of file map.c.

+ Here is the call graph for this function:

static void map_free_extras ( u32  map_domain_index)
static

Definition at line 90 of file map.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static map_main_pre_resolved_t* map_from_fib_node ( fib_node_t node)
static

Definition at line 333 of file map.c.

+ Here is the caller graph for this function:

u8 map_get_ht_log2len ( f32  ht_ratio,
u16  pool_size 
)

Definition at line 1808 of file map.c.

+ Here is the caller graph for this function:

static clib_error_t* map_icmp_relay_source_address_command_fn ( vlib_main_t vm,
unformat_input_t input,
vlib_cli_command_t cmd 
)
static

Definition at line 730 of file map.c.

+ Here is the call graph for this function:

static clib_error_t* map_icmp_unreachables_command_fn ( vlib_main_t vm,
unformat_input_t input,
vlib_cli_command_t cmd 
)
static

Definition at line 771 of file map.c.

+ Here is the call graph for this function:

static clib_error_t* map_if_command_fn ( vlib_main_t vm,
unformat_input_t input,
vlib_cli_command_t cmd 
)
static

Definition at line 1314 of file map.c.

+ Here is the call graph for this function:

clib_error_t* map_init ( vlib_main_t vm)

Definition at line 2235 of file map.c.

+ Here is the call graph for this function:

int map_ip4_reass_add_fragment ( map_ip4_reass_t r,
u32  pi 
)

Definition at line 1528 of file map.c.

+ Here is the caller graph for this function:

int map_ip4_reass_conf_buffers ( u32  buffers)

Definition at line 1858 of file map.c.

+ Here is the caller graph for this function:

int map_ip4_reass_conf_ht_ratio ( f32  ht_ratio,
u32 trashed_reass,
u32 dropped_packets 
)

Definition at line 1819 of file map.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int map_ip4_reass_conf_lifetime ( u16  lifetime_ms)

Definition at line 1851 of file map.c.

+ Here is the caller graph for this function:

int map_ip4_reass_conf_pool_size ( u16  pool_size,
u32 trashed_reass,
u32 dropped_packets 
)

Definition at line 1836 of file map.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void map_ip4_reass_free ( map_ip4_reass_t r,
u32 **  pi_to_drop 
)

Definition at line 1404 of file map.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

map_ip4_reass_t* map_ip4_reass_get ( u32  src,
u32  dst,
u16  fragment_id,
u8  protocol,
u32 **  pi_to_drop 
)

Definition at line 1447 of file map.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static_always_inline map_ip4_reass_t* map_ip4_reass_lookup ( map_ip4_reass_key_t k,
u32  bucket,
f64  now 
)

Definition at line 1383 of file map.c.

+ Here is the caller graph for this function:

void map_ip4_reass_reinit ( u32 trashed_reass,
u32 dropped_packets 
)

Definition at line 1770 of file map.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int map_ip6_reass_add_fragment ( map_ip6_reass_t r,
u32  pi,
u16  data_offset,
u16  next_data_offset,
u8 data_start,
u16  data_len 
)

Definition at line 1707 of file map.c.

+ Here is the caller graph for this function:

int map_ip6_reass_conf_buffers ( u32  buffers)

Definition at line 1941 of file map.c.

+ Here is the caller graph for this function:

int map_ip6_reass_conf_ht_ratio ( f32  ht_ratio,
u32 trashed_reass,
u32 dropped_packets 
)

Definition at line 1902 of file map.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int map_ip6_reass_conf_lifetime ( u16  lifetime_ms)

Definition at line 1934 of file map.c.

+ Here is the caller graph for this function:

int map_ip6_reass_conf_pool_size ( u16  pool_size,
u32 trashed_reass,
u32 dropped_packets 
)

Definition at line 1919 of file map.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void map_ip6_reass_free ( map_ip6_reass_t r,
u32 **  pi_to_drop 
)

Definition at line 1567 of file map.c.

+ Here is the caller graph for this function:

map_ip6_reass_t* map_ip6_reass_get ( ip6_address_t src,
ip6_address_t dst,
u32  fragment_id,
u8  protocol,
u32 **  pi_to_drop 
)

Definition at line 1619 of file map.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static_always_inline map_ip6_reass_t* map_ip6_reass_lookup ( map_ip6_reass_key_t k,
u32  bucket,
f64  now 
)

Definition at line 1545 of file map.c.

+ Here is the caller graph for this function:

void map_ip6_reass_reinit ( u32 trashed_reass,
u32 dropped_packets 
)

Definition at line 1865 of file map.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void map_last_lock_gone ( fib_node_t node)
static

Function definition to inform the FIB node that its last lock has gone.

Definition at line 323 of file map.c.

static clib_error_t* map_params_reass_command_fn ( vlib_main_t vm,
unformat_input_t input,
vlib_cli_command_t cmd 
)
static

Definition at line 1207 of file map.c.

+ Here is the call graph for this function:

void map_pre_resolve ( ip4_address_t ip4,
ip6_address_t ip6,
bool  is_del 
)

Definition at line 422 of file map.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static clib_error_t* map_pre_resolve_command_fn ( vlib_main_t vm,
unformat_input_t input,
vlib_cli_command_t cmd 
)
static

Definition at line 686 of file map.c.

+ Here is the call graph for this function:

static void map_pre_resolve_init ( map_main_pre_resolved_t pr)
static

Definition at line 291 of file map.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void map_save_extras ( u32  map_domain_index,
char *  tag 
)
static

Definition at line 67 of file map.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static clib_error_t* map_security_check_command_fn ( vlib_main_t vm,
unformat_input_t input,
vlib_cli_command_t cmd 
)
static

Definition at line 452 of file map.c.

+ Here is the call graph for this function:

static void map_stack ( map_main_pre_resolved_t pr)
static

Definition at line 342 of file map.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static clib_error_t* map_tcp_mss_command_fn ( vlib_main_t vm,
unformat_input_t input,
vlib_cli_command_t cmd 
)
static

Definition at line 1948 of file map.c.

+ Here is the call graph for this function:

static clib_error_t* map_traffic_class_command_fn ( vlib_main_t vm,
unformat_input_t input,
vlib_cli_command_t cmd 
)
static

Definition at line 879 of file map.c.

+ Here is the call graph for this function:

static clib_error_t* show_map_domain_command_fn ( vlib_main_t vm,
unformat_input_t input,
vlib_cli_command_t cmd 
)
static

Definition at line 1017 of file map.c.

+ Here is the call graph for this function:

static clib_error_t* show_map_fragments_command_fn ( vlib_main_t vm,
unformat_input_t input,
vlib_cli_command_t cmd 
)
static

Definition at line 1075 of file map.c.

static clib_error_t* show_map_stats_command_fn ( vlib_main_t vm,
unformat_input_t input,
vlib_cli_command_t cmd 
)
static

Definition at line 1109 of file map.c.

+ Here is the call graph for this function:

VLIB_PLUGIN_REGISTER ( )

Variable Documentation

vlib_cli_command_t map_add_domain_command
static
Initial value:
= {
.path = "map add domain",
.short_help = "map add domain [tag <tag>] ip4-pfx <ip4-pfx> "
"ip6-pfx <ip6-pfx> "
"ip6-src <ip6-pfx> ea-bits-len <n> psid-offset <n> psid-len <n> "
"[map-t] [mtu <mtu>]",
}
static clib_error_t * map_add_domain_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Definition: map.c:520

(constructor) VLIB_CLI_COMMAND (map_add_domain_command)

Definition at line 2140 of file map.c.

vlib_cli_command_t map_add_rule_command
static
Initial value:
= {
.path = "map add rule",
.short_help = "map add rule index <domain> psid <psid> ip6-dst <ip6-addr>",
}
static clib_error_t * map_add_rule_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Definition: map.c:636

(constructor) VLIB_CLI_COMMAND (map_add_rule_command)

Definition at line 2156 of file map.c.

vlib_cli_command_t map_del_command
static
Initial value:
= {
.path = "map del domain",
.short_help = "map del domain index <domain>",
}
static clib_error_t * map_del_domain_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Definition: map.c:597

(constructor) VLIB_CLI_COMMAND (map_del_command)

Definition at line 2169 of file map.c.

vlib_cli_command_t map_fragment_command
static
Initial value:
= {
.path = "map params fragment",
.short_help = "map params fragment inner|outer ignore-df|honor-df",
}
static clib_error_t * map_fragment_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Definition: map.c:814

(constructor) VLIB_CLI_COMMAND (map_fragment_command)

Definition at line 2126 of file map.c.

vlib_cli_command_t map_icmp_relay_source_address_command
static
Initial value:
= {
.path = "map params icmp source-address",
.short_help = "map params icmp source-address <ip4-address>",
}
static clib_error_t * map_icmp_relay_source_address_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Definition: map.c:730

(constructor) VLIB_CLI_COMMAND (map_icmp_relay_source_address_command)

Definition at line 2091 of file map.c.

vlib_cli_command_t map_icmp_unreachables_command
static
Initial value:
= {
.path = "map params icmp6 unreachables",
.short_help = "map params icmp6 unreachables {on|off}",
}
static clib_error_t * map_icmp_unreachables_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Definition: map.c:771

(constructor) VLIB_CLI_COMMAND (map_icmp_unreachables_command)

Definition at line 2107 of file map.c.

vlib_cli_command_t map_if_command
static
Initial value:
= {
.path = "map interface",
.short_help = "map interface <interface-name> [map-t] [del]",
.function = map_if_command_fn,
}
static clib_error_t * map_if_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Definition: map.c:1314

(constructor) VLIB_CLI_COMMAND (map_if_command)

Definition at line 2218 of file map.c.

vlib_cli_command_t map_ip4_reass_lifetime_command
static
Initial value:
= {
.path = "map params reassembly",
.short_help = "map params reassembly [ip4 | ip6] [lifetime <lifetime-ms>] "
"[pool-size <pool-size>] [buffers <buffers>] "
"[ht-ratio <ht-ratio>]",
}
static clib_error_t * map_params_reass_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Definition: map.c:1207

(constructor) VLIB_CLI_COMMAND (map_ip4_reass_lifetime_command)

Definition at line 1995 of file map.c.

map_main_t map_main

Definition at line 26 of file map.c.

vlib_cli_command_t map_pre_resolve_command
static
Initial value:
= {
.path = "map params pre-resolve",
.short_help = " map params pre-resolve {ip4-nh <address>} "
"| {ip6-nh <address>}",
}
static clib_error_t * map_pre_resolve_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Definition: map.c:686

(constructor) VLIB_CLI_COMMAND (map_pre_resolve_command)

Definition at line 2049 of file map.c.

vlib_cli_command_t map_security_check_command
static
Initial value:
= {
.path = "map params security-check",
.short_help = "map params security-check enable|disable fragments on|off",
}
static clib_error_t * map_security_check_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Definition: map.c:452

(constructor) VLIB_CLI_COMMAND (map_security_check_command)

Definition at line 2073 of file map.c.

vlib_cli_command_t map_tcp_mss_command
static
Initial value:
= {
.path = "map params tcp-mss",
.short_help = "map params tcp-mss <value>",
}
static clib_error_t * map_tcp_mss_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Definition: map.c:1948

(constructor) VLIB_CLI_COMMAND (map_tcp_mss_command)

Definition at line 2031 of file map.c.

vlib_cli_command_t map_traffic_class_command
static
Initial value:
= {
.path = "map params traffic-class",
.short_help = "map params traffic-class {0x0-0xff | copy}",
}
static clib_error_t * map_traffic_class_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Definition: map.c:879

(constructor) VLIB_CLI_COMMAND (map_traffic_class_command)

Definition at line 2015 of file map.c.

const fib_node_vft_t map_vft
static
Initial value:
= {
.fnv_get = map_fib_node_get,
.fnv_last_lock = map_last_lock_gone,
.fnv_back_walk = map_back_walk,
}
static fib_node_t * map_fib_node_get(fib_node_index_t index)
Function definition to get a FIB node from its index.
Definition: map.c:366
static fib_node_back_walk_rc_t map_back_walk(fib_node_t *node, fib_node_back_walk_ctx_t *ctx)
Function definition to backwalk a FIB node.
Definition: map.c:355
static void map_last_lock_gone(fib_node_t *node)
Function definition to inform the FIB node that its last lock has gone.
Definition: map.c:323

Definition at line 375 of file map.c.

Pre-resolved per-protocol global next-hops.

Pre-resolved next hops for v4 and v6.

Definition at line 288 of file map.c.

vlib_cli_command_t show_map_domain_command
static
Initial value:
= {
.path = "show map domain",
.short_help = "show map domain index <n> [counters]",
}
static clib_error_t * show_map_domain_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Definition: map.c:1017

(constructor) VLIB_CLI_COMMAND (show_map_domain_command)

Definition at line 2182 of file map.c.

vlib_cli_command_t show_map_fragments_command
static
Initial value:
= {
.path = "show map fragments",
.short_help = "show map fragments",
}
static clib_error_t * show_map_fragments_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Definition: map.c:1075

(constructor) VLIB_CLI_COMMAND (show_map_fragments_command)

Definition at line 2208 of file map.c.

vlib_cli_command_t show_map_stats_command
static
Initial value:
= {
.path = "show map stats",
.short_help = "show map stats",
}
static clib_error_t * show_map_stats_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Definition: map.c:1109

(constructor) VLIB_CLI_COMMAND (show_map_stats_command)

Definition at line 2195 of file map.c.