lisp: fix lisp/one enable/disable 78/28078/3
authorFlorin Coras <fcoras@cisco.com>
Mon, 27 Jul 2020 21:26:28 +0000 (14:26 -0700)
committerDave Barach <openvpp@barachs.net>
Tue, 28 Jul 2020 12:17:04 +0000 (12:17 +0000)
Type: fix

Change-Id: Iefe6b3a1a0a999d89ef9812fc14d31159043e60c
Signed-off-by: Florin Coras <fcoras@cisco.com>
src/vnet/lisp-cp/lisp_cli.c
src/vnet/lisp-cp/one_cli.c

index 5cd1834..31b2ca8 100644 (file)
@@ -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 <vni> "
-    "eid <est-eid> [action <no-action|natively-forward|"
-    "send-map-request|drop>] rloc <dst-locator> p <prio> w <weight> "
-    "[rloc <dst-locator> ... ]",.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 <vni> "
+                 "eid <est-eid> [action <no-action|natively-forward|"
+                 "send-map-request|drop>] rloc <dst-locator> p <prio> "
+                 "w <weight> [rloc <dst-locator> ... ]",
+    .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)
     {
index d5a0ee0..e44632f 100644 (file)
@@ -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* */