.parent_node = ISIS_NODE,
.prompt = "%s(config-router-flex-algo)# ",
};
+
+static struct cmd_node isis_srv6_node = {
+ .name = "isis-srv6",
+ .node = ISIS_SRV6_NODE,
+ .parent_node = ISIS_NODE,
+ .prompt = "%s(config-router-srv6)# ",
+};
+
+static struct cmd_node isis_srv6_node_msd_node = {
+ .name = "isis-srv6-node-msd",
+ .node = ISIS_SRV6_NODE_MSD_NODE,
+ .parent_node = ISIS_SRV6_NODE,
+ .prompt = "%s(config-router-srv6-node-msd)# ",
+};
#endif /* HAVE_ISISD */
#ifdef HAVE_FABRICD
vty->node = ISIS_FLEX_ALGO_NODE;
return CMD_SUCCESS;
}
+
+DEFUNSH(VTYSH_ISISD, isis_srv6_enable, isis_srv6_enable_cmd,
+ "segment-routing srv6",
+ SR_STR
+ "Enable Segment Routing over IPv6 (SRv6)\n")
+{
+ vty->node = ISIS_SRV6_NODE;
+ return CMD_SUCCESS;
+}
+
+DEFUNSH(VTYSH_ISISD, isis_srv6_node_msd, isis_srv6_node_msd_cmd,
+ "node-msd",
+ "Segment Routing over IPv6 (SRv6) Maximum SRv6 SID Depths\n")
+{
+ vty->node = ISIS_SRV6_NODE_MSD_NODE;
+ return CMD_SUCCESS;
+}
#endif /* HAVE_ISISD */
#ifdef HAVE_FABRICD
{
return vtysh_exit_isisd(self, vty, argc, argv);
}
+
+DEFUNSH(VTYSH_ISISD, vtysh_exit_isis_srv6_enable, vtysh_exit_isis_srv6_enable_cmd,
+ "exit", "Exit current mode and down to previous mode\n")
+{
+ return vtysh_exit_isisd(self, vty, argc, argv);
+}
+
+DEFUNSH(VTYSH_ISISD, vtysh_quit_isis_srv6_enable, vtysh_quit_isis_srv6_enable_cmd,
+ "quit", "Exit current mode and down to previous mode\n")
+{
+ return vtysh_exit_isisd(self, vty, argc, argv);
+}
+
+DEFUNSH(VTYSH_ISISD, vtysh_exit_isis_srv6_node_msd, vtysh_exit_isis_srv6_node_msd_cmd,
+ "exit", "Exit current mode and down to previous mode\n")
+{
+ return vtysh_exit(vty);
+}
+
+DEFUNSH(VTYSH_ISISD, vtysh_quit_isis_srv6_node_msd, vtysh_quit_isis_srv6_node_msd_cmd,
+ "quit", "Exit current mode and down to previous mode\n")
+{
+ return vtysh_exit_isisd(self, vty, argc, argv);
+}
#endif /* HAVE_ISISD */
#if HAVE_BFDD > 0
install_element(ISIS_FLEX_ALGO_NODE, &vtysh_exit_isis_flex_algo_cmd);
install_element(ISIS_FLEX_ALGO_NODE, &vtysh_quit_isis_flex_algo_cmd);
install_element(ISIS_FLEX_ALGO_NODE, &vtysh_end_all_cmd);
+
+ install_node(&isis_srv6_node);
+ install_element(ISIS_NODE, &isis_srv6_enable_cmd);
+ install_element(ISIS_SRV6_NODE, &isis_srv6_node_msd_cmd);
+ install_element(ISIS_SRV6_NODE, &vtysh_exit_isis_srv6_enable_cmd);
+ install_element(ISIS_SRV6_NODE, &vtysh_quit_isis_srv6_enable_cmd);
+ install_element(ISIS_SRV6_NODE, &vtysh_end_all_cmd);
+ install_node(&isis_srv6_node_msd_node);
+ install_element(ISIS_SRV6_NODE_MSD_NODE,
+ &vtysh_exit_isis_srv6_node_msd_cmd);
+ install_element(ISIS_SRV6_NODE_MSD_NODE,
+ &vtysh_quit_isis_srv6_node_msd_cmd);
+ install_element(ISIS_SRV6_NODE_MSD_NODE, &vtysh_end_all_cmd);
#endif /* HAVE_ISISD */
/* fabricd */