}
static clib_error_t *
-nat44_show_hash_commnad_fn (vlib_main_t * vm, unformat_input_t * input,
+nat44_show_hash_command_fn (vlib_main_t * vm, unformat_input_t * input,
vlib_cli_command_t * cmd)
{
snat_main_t *sm = &snat_main;
vlib_cli_output (vm, "%U", format_bihash_16_8, &nam->affinity_hash,
verbose);
}
+
+ vlib_cli_output (vm, "-------- hash table parameters --------\n");
+ vlib_cli_output (vm, "translation buckets: %u", sm->translation_buckets);
+ vlib_cli_output (vm, "translation memory size: %U",
+ format_memory_size, sm->translation_memory_size);
+ if (!sm->endpoint_dependent)
+ {
+ vlib_cli_output (vm, "user buckets: %u", sm->user_buckets);
+ vlib_cli_output (vm, "user memory size: %U",
+ format_memory_size, sm->user_memory_size);
+ }
return 0;
}
if (sm->deterministic || !sm->endpoint_dependent)
return clib_error_return (0, UNSUPPORTED_IN_DET_OR_NON_ED_MODE_STR);
- vlib_cli_output (vm, "max translations: %u", sm->max_translations);
+ vlib_cli_output (vm, "max translations per thread: %u",
+ sm->max_translations_per_thread);
vlib_cli_output (vm, "max translations per user: %u",
sm->max_translations_per_user);
}
}
- rv = snat_det_add_map (sm, &in_addr, (u8) in_plen, &out_addr, (u8) out_plen,
- is_add);
+ if (in_plen > 32 || out_plen > 32)
+ {
+ error = clib_error_return (0, "network prefix length must be <= 32");
+ goto done;
+ }
+
+ rv = snat_det_add_map (sm, &in_addr, in_plen, &out_addr, out_plen, is_add);
if (rv)
{
VLIB_CLI_COMMAND (nat44_show_hash, static) = {
.path = "show nat44 hash tables",
.short_help = "show nat44 hash tables [detail|verbose]",
- .function = nat44_show_hash_commnad_fn,
+ .function = nat44_show_hash_command_fn,
};
/*?