From 554159af58505dd41fc2db2f813a1270452ef746 Mon Sep 17 00:00:00 2001 From: Florin Coras Date: Mon, 27 Jul 2020 14:26:28 -0700 Subject: lisp: fix lisp/one enable/disable Type: fix Change-Id: Iefe6b3a1a0a999d89ef9812fc14d31159043e60c Signed-off-by: Florin Coras (cherry picked from commit 508dc51bd075f6bb16862265c0c43e8efb76349c) --- src/vnet/lisp-cp/lisp_cli.c | 86 ++++++++++++++++++++------------------------- src/vnet/lisp-cp/one_cli.c | 66 +++++++++++++++------------------- 2 files changed, 67 insertions(+), 85 deletions(-) diff --git a/src/vnet/lisp-cp/lisp_cli.c b/src/vnet/lisp-cp/lisp_cli.c index 5cd183402b0..31b2ca88cbf 100644 --- a/src/vnet/lisp-cp/lisp_cli.c +++ b/src/vnet/lisp-cp/lisp_cli.c @@ -418,14 +418,16 @@ done: return error; } -VLIB_CLI_COMMAND (lisp_add_del_remote_mapping_command) = -{ -.path = "lisp remote-mapping",.short_help = - "lisp remote-mapping add|del [del-all] vni " - "eid [action ] rloc p w " - "[rloc ... ]",.function = - lisp_add_del_remote_mapping_command_fn,}; +/* *INDENT-OFF* */ +VLIB_CLI_COMMAND (lisp_add_del_remote_mapping_command) = { + .path = "lisp remote-mapping", + .short_help = "lisp remote-mapping add|del [del-all] vni " + "eid [action ] rloc p " + "w [rloc ... ]", + .function = lisp_add_del_remote_mapping_command_fn, +}; +/* *INDENT-ON* */ /** * Handler for add/del adjacency CLI. @@ -892,54 +894,44 @@ VLIB_CLI_COMMAND (lisp_cp_show_eid_table_command) = { static clib_error_t * -lisp_enable_disable_command_fn (vlib_main_t * vm, unformat_input_t * input, - vlib_cli_command_t * cmd) +lisp_enable_command_fn (vlib_main_t * vm, unformat_input_t * input, + vlib_cli_command_t * cmd) { - unformat_input_t _line_input, *line_input = &_line_input; - u8 is_enabled = 0; - u8 is_set = 0; - clib_error_t *error = NULL; + if (unformat_check_input (input) != UNFORMAT_END_OF_INPUT) + return clib_error_return (0, "parse error: '%U'", format_unformat_error, + input); - /* Get a line of input. */ - if (!unformat_user (input, unformat_line_input, line_input)) - return clib_error_return (0, "expected enable | disable"); + vnet_lisp_enable_disable (1); - while (unformat_check_input (line_input) != UNFORMAT_END_OF_INPUT) - { - if (unformat (line_input, "enable")) - { - is_set = 1; - is_enabled = 1; - } - else if (unformat (line_input, "disable")) - is_set = 1; - else - { - error = clib_error_return (0, "parse error: '%U'", - format_unformat_error, line_input); - goto done; - } - } + return 0; +} - if (!is_set) - { - error = clib_error_return (0, "state not set"); - goto done; - } +/* *INDENT-OFF* */ +VLIB_CLI_COMMAND (lisp_cp_enable_command) = { + .path = "lisp enable", + .short_help = "lisp enable", + .function = lisp_enable_command_fn, +}; +/* *INDENT-ON* */ - vnet_lisp_enable_disable (is_enabled); +static clib_error_t * +lisp_disable_command_fn (vlib_main_t * vm, unformat_input_t * input, + vlib_cli_command_t * cmd) +{ + if (unformat_check_input (input) != UNFORMAT_END_OF_INPUT) + return clib_error_return (0, "parse error: '%U'", format_unformat_error, + input); -done: - unformat_free (line_input); + vnet_lisp_enable_disable (0); - return error; + return 0; } /* *INDENT-OFF* */ -VLIB_CLI_COMMAND (lisp_cp_enable_disable_command) = { - .path = "lisp", - .short_help = "lisp [enable|disable]", - .function = lisp_enable_disable_command_fn, +VLIB_CLI_COMMAND (lisp_cp_disable_command) = { + .path = "lisp disable", + .short_help = "lisp disable", + .function = lisp_disable_command_fn, }; /* *INDENT-ON* */ @@ -1163,7 +1155,7 @@ lisp_add_del_locator_set_command_fn (vlib_main_t * vm, /* Get a line of input. */ if (!unformat_user (input, unformat_line_input, line_input)) - return 0; + return clib_error_return (0, "missing parameters"); while (unformat_check_input (line_input) != UNFORMAT_END_OF_INPUT) { diff --git a/src/vnet/lisp-cp/one_cli.c b/src/vnet/lisp-cp/one_cli.c index d5a0ee00015..e44632f9760 100644 --- a/src/vnet/lisp-cp/one_cli.c +++ b/src/vnet/lisp-cp/one_cli.c @@ -1369,54 +1369,44 @@ VLIB_CLI_COMMAND (one_cp_enable_disable_xtr_mode_command) = { /* *INDENT-ON* */ static clib_error_t * -lisp_enable_disable_command_fn (vlib_main_t * vm, unformat_input_t * input, - vlib_cli_command_t * cmd) +one_enable_command_fn (vlib_main_t * vm, unformat_input_t * input, + vlib_cli_command_t * cmd) { - unformat_input_t _line_input, *line_input = &_line_input; - u8 is_enabled = 0; - u8 is_set = 0; - clib_error_t *error = NULL; + if (unformat_check_input (input) != UNFORMAT_END_OF_INPUT) + return clib_error_return (0, "parse error: '%U'", format_unformat_error, + input); - /* Get a line of input. */ - if (!unformat_user (input, unformat_line_input, line_input)) - return clib_error_return (0, "expected enable | disable"); + vnet_lisp_enable_disable (1); - while (unformat_check_input (line_input) != UNFORMAT_END_OF_INPUT) - { - if (unformat (line_input, "enable")) - { - is_set = 1; - is_enabled = 1; - } - else if (unformat (line_input, "disable")) - is_set = 1; - else - { - error = clib_error_return (0, "parse error: '%U'", - format_unformat_error, line_input); - goto done; - } - } + return 0; +} - if (!is_set) - { - error = clib_error_return (0, "state not set"); - goto done; - } +/* *INDENT-OFF* */ +VLIB_CLI_COMMAND (one_cp_enable_command) = { + .path = "one enable", + .short_help = "one enable", + .function = one_enable_command_fn, +}; +/* *INDENT-ON* */ - vnet_lisp_enable_disable (is_enabled); +static clib_error_t * +one_disable_command_fn (vlib_main_t * vm, unformat_input_t * input, + vlib_cli_command_t * cmd) +{ + if (unformat_check_input (input) != UNFORMAT_END_OF_INPUT) + return clib_error_return (0, "parse error: '%U'", format_unformat_error, + input); -done: - unformat_free (line_input); + vnet_lisp_enable_disable (0); - return error; + return 0; } /* *INDENT-OFF* */ -VLIB_CLI_COMMAND (one_cp_enable_disable_command) = { - .path = "one", - .short_help = "one [enable|disable]", - .function = lisp_enable_disable_command_fn, +VLIB_CLI_COMMAND (one_cp_disable_command) = { + .path = "one disable", + .short_help = "one disable", + .function = one_disable_command_fn, }; /* *INDENT-ON* */ -- cgit 1.2.3-korg