+static clib_error_t *
+nat44_show_alloc_addr_and_port_alg_command_fn (vlib_main_t * vm,
+ unformat_input_t * input,
+ vlib_cli_command_t * cmd)
+{
+ snat_main_t *sm = &snat_main;
+
+ if (sm->deterministic)
+ return clib_error_return (0, UNSUPPORTED_IN_DET_MODE_STR);
+
+ vlib_cli_output (vm, "NAT address and port: %U",
+ format_nat_addr_and_port_alloc_alg,
+ sm->addr_and_port_alloc_alg);
+ switch (sm->addr_and_port_alloc_alg)
+ {
+ case NAT_ADDR_AND_PORT_ALLOC_ALG_MAPE:
+ vlib_cli_output (vm, " psid %d psid-offset %d psid-len %d", sm->psid,
+ sm->psid_offset, sm->psid_length);
+ break;
+ case NAT_ADDR_AND_PORT_ALLOC_ALG_RANGE:
+ vlib_cli_output (vm, " start-port %d end-port %d", sm->start_port,
+ sm->end_port);
+ break;
+ default:
+ break;
+ }
+
+ return 0;
+}
+