vtysh, zebra: Fix link-params to use exit-link-params

Fix the link-params submode to use the 'exit-link-params'
to indicate we are exiting a submode.

Fixup all the relevant bits.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
This commit is contained in:
Donald Sharp 2016-11-18 15:42:41 -05:00
parent 80922366a0
commit 03f99d9a4d
4 changed files with 26 additions and 2 deletions

View File

@ -65,6 +65,7 @@ $ignore{'"address-family encapv6"'} = "ignore";
$ignore{'"address-family vpnv6"'} = "ignore"; $ignore{'"address-family vpnv6"'} = "ignore";
$ignore{'"address-family vpnv6 unicast"'} = "ignore"; $ignore{'"address-family vpnv6 unicast"'} = "ignore";
$ignore{'"exit-address-family"'} = "ignore"; $ignore{'"exit-address-family"'} = "ignore";
$ignore{'"exit-link-params"'} = "ignore";
$ignore{'"vnc defaults"'} = "ignore"; $ignore{'"vnc defaults"'} = "ignore";
$ignore{'"vnc nve-group NAME"'} = "ignore"; $ignore{'"vnc nve-group NAME"'} = "ignore";
$ignore{'"exit-vnc"'} = "ignore"; $ignore{'"exit-vnc"'} = "ignore";

View File

@ -1976,6 +1976,17 @@ DEFUNSH (VTYSH_ZEBRA,
return CMD_SUCCESS; return CMD_SUCCESS;
} }
DEFUNSH (VTYSH_ZEBRA,
exit_link_params,
exit_link_params_cmd,
"exit-link-params",
"Exit from Link Params configuration node\n")
{
if (vty->node == LINK_PARAMS_NODE)
vty->node = INTERFACE_NODE;
return CMD_SUCCESS;
}
/* Memory */ /* Memory */
DEFUN (vtysh_show_memory, DEFUN (vtysh_show_memory,
vtysh_show_memory_cmd, vtysh_show_memory_cmd,
@ -3288,6 +3299,7 @@ vtysh_init_vty (void)
install_element (INTERFACE_NODE, &no_interface_desc_cmd); install_element (INTERFACE_NODE, &no_interface_desc_cmd);
install_element (INTERFACE_NODE, &vtysh_end_all_cmd); install_element (INTERFACE_NODE, &vtysh_end_all_cmd);
install_element (INTERFACE_NODE, &vtysh_exit_interface_cmd); install_element (INTERFACE_NODE, &vtysh_exit_interface_cmd);
install_element (LINK_PARAMS_NODE, &exit_link_params_cmd);
install_element (LINK_PARAMS_NODE, &vtysh_end_all_cmd); install_element (LINK_PARAMS_NODE, &vtysh_end_all_cmd);
install_element (LINK_PARAMS_NODE, &vtysh_exit_interface_cmd); install_element (LINK_PARAMS_NODE, &vtysh_exit_interface_cmd);
install_element (INTERFACE_NODE, &vtysh_quit_interface_cmd); install_element (INTERFACE_NODE, &vtysh_quit_interface_cmd);

View File

@ -177,7 +177,7 @@ vtysh_config_parse_line (const char *line)
config->index = LINK_PARAMS_NODE; config->index = LINK_PARAMS_NODE;
} }
else if (config->index == LINK_PARAMS_NODE && else if (config->index == LINK_PARAMS_NODE &&
strncmp (line, " exit", strlen (" exit")) == 0) strncmp (line, " exit-link-params", strlen (" exit")) == 0)
{ {
config_add_line (config->line, line); config_add_line (config->line, line);
config->index = INTERFACE_NODE; config->index = INTERFACE_NODE;

View File

@ -1773,6 +1773,16 @@ DEFUN (link_params,
return CMD_SUCCESS; return CMD_SUCCESS;
} }
DEFUN (exit_link_params,
exit_link_params_cmd,
"exit-link-params",
"Exit from Link Params configuration mode\n")
{
if (vty->node == LINK_PARAMS_NODE)
vty->node = INTERFACE_NODE;
return CMD_SUCCESS;
}
/* Specific Traffic Engineering parameters commands */ /* Specific Traffic Engineering parameters commands */
DEFUN (link_params_enable, DEFUN (link_params_enable,
link_params_enable_cmd, link_params_enable_cmd,
@ -2814,7 +2824,7 @@ link_params_config_write (struct vty *vty, struct interface *ifp)
if (IS_PARAM_SET(iflp, LP_RMT_AS)) if (IS_PARAM_SET(iflp, LP_RMT_AS))
vty_out(vty, " neighbor %s as %u%s", inet_ntoa(iflp->rmt_ip), vty_out(vty, " neighbor %s as %u%s", inet_ntoa(iflp->rmt_ip),
iflp->rmt_as, VTY_NEWLINE); iflp->rmt_as, VTY_NEWLINE);
vty_out(vty, " exit%s", VTY_NEWLINE); vty_out(vty, " exit-link-params%s", VTY_NEWLINE);
return 0; return 0;
} }
@ -2995,6 +3005,7 @@ zebra_if_init (void)
install_element(LINK_PARAMS_NODE, &no_link_params_res_bw_cmd); install_element(LINK_PARAMS_NODE, &no_link_params_res_bw_cmd);
install_element(LINK_PARAMS_NODE, &link_params_use_bw_cmd); install_element(LINK_PARAMS_NODE, &link_params_use_bw_cmd);
install_element(LINK_PARAMS_NODE, &no_link_params_use_bw_cmd); install_element(LINK_PARAMS_NODE, &no_link_params_use_bw_cmd);
install_element(LINK_PARAMS_NODE, &exit_link_params_cmd);
install_element (CONFIG_NODE, &zebra_vrf_cmd); install_element (CONFIG_NODE, &zebra_vrf_cmd);
install_element (CONFIG_NODE, &no_vrf_cmd); install_element (CONFIG_NODE, &no_vrf_cmd);