Fix missing and misplaced `exit` statements to `show running-config` output.
Before:
```
router isis ISIS_CORE
[...]
segment-routing srv6
locator ISIS_LOC
exit <<<<<<< always placed after locator
node-msd
[...]
exit <<<<<<< missng
interface dum6
exit
```
After:
```
router isis ISIS_CORE
[...]
segment-routing srv6
locator ISIS_LOC
node-msd
[...]
exit
interface dum6
exit
exit
```
Related #16694
Signed-off-by: Jonathan Voss <jvoss@onvox.net>
vty_out(vty, " locator %s\n", yang_dnode_get_string(dnode, NULL));
}
-void cli_show_isis_srv6_locator_end(struct vty *vty,
- const struct lyd_node *dnode)
-{
- vty_out(vty, " exit\n");
-}
-
/*
* XPath: /frr-isisd:isis/instance/segment-routing-srv6/enabled
*/
vty_out(vty, " segment-routing srv6\n");
}
+void cli_show_isis_srv6_end(struct vty *vty, const struct lyd_node *dnode)
+{
+ vty_out(vty, " exit\n");
+}
+
/*
* XPath: /frr-isisd:isis/instance/segment-routing-srv6/msd/node-msd
*/
yang_dnode_get_uint8(dnode, "max-end-d"));
}
+void cli_show_isis_srv6_node_msd_end(struct vty *vty, const struct lyd_node *dnode)
+{
+ vty_out(vty, " exit\n");
+}
+
/*
* XPath: /frr-isisd:isis/instance/segment-routing-srv6/interface
*/
.destroy = isis_instance_flex_algo_priority_destroy,
},
},
+ {
+ .xpath = "/frr-isisd:isis/instance/segment-routing-srv6",
+ .cbs = {
+ .cli_show_end = cli_show_isis_srv6_end,
+ },
+ },
{
.xpath = "/frr-isisd:isis/instance/segment-routing-srv6/enabled",
.cbs = {
.modify = isis_instance_segment_routing_srv6_locator_modify,
.destroy = isis_instance_segment_routing_srv6_locator_destroy,
.cli_show = cli_show_isis_srv6_locator,
- .cli_show_end = cli_show_isis_srv6_locator_end,
},
},
{
.xpath = "/frr-isisd:isis/instance/segment-routing-srv6/msd/node-msd",
.cbs = {
.cli_show = cli_show_isis_srv6_node_msd,
+ .cli_show_end = cli_show_isis_srv6_node_msd_end,
},
},
{
struct nb_cb_modify_args *args);
int isis_instance_flex_algo_affinity_mapping_value_destroy(
struct nb_cb_destroy_args *args);
+void cli_show_isis_srv6_end(struct vty *vty, const struct lyd_node *dnode);
int isis_instance_segment_routing_srv6_enabled_modify(
struct nb_cb_modify_args *args);
void cli_show_isis_srv6_enabled(struct vty *vty, const struct lyd_node *dnode,
struct nb_cb_destroy_args *args);
void cli_show_isis_srv6_locator(struct vty *vty, const struct lyd_node *dnode,
bool show_defaults);
-void cli_show_isis_srv6_locator_end(struct vty *vty,
- const struct lyd_node *dnode);
int isis_instance_segment_routing_srv6_msd_node_msd_max_segs_left_modify(
struct nb_cb_modify_args *args);
int isis_instance_segment_routing_srv6_msd_node_msd_max_end_pop_modify(
struct nb_cb_modify_args *args);
void cli_show_isis_srv6_node_msd(struct vty *vty, const struct lyd_node *dnode,
bool show_defaults);
+void cli_show_isis_srv6_node_msd_end(struct vty *vty, const struct lyd_node *dnode);
int isis_instance_segment_routing_srv6_interface_modify(
struct nb_cb_modify_args *args);
void cli_show_isis_srv6_interface(struct vty *vty, const struct lyd_node *dnode,