From d15cc4741beacc0de0a036e35c4b23196cdbda48 Mon Sep 17 00:00:00 2001 From: anlan_cs Date: Thu, 23 May 2024 21:49:28 +0800 Subject: [PATCH] ospfd: add instance id for one command Add the specific instance id for the command: ``` show ip ospf [{(1-65535)$instance|vrf }] graceful-restart helper [detail] [json] ``` Signed-off-by: anlan_cs --- ospfd/ospf_vty.c | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/ospfd/ospf_vty.c b/ospfd/ospf_vty.c index 301320bb0a..7cb51976f5 100644 --- a/ospfd/ospf_vty.c +++ b/ospfd/ospf_vty.c @@ -10755,10 +10755,11 @@ DEFUN (ospf_route_aggregation_timer, DEFPY (show_ip_ospf_gr_helper, show_ip_ospf_gr_helper_cmd, - "show ip ospf [vrf ] graceful-restart helper [detail] [json]", + "show ip ospf [{(1-65535)$instance|vrf }] graceful-restart helper [detail] [json]", SHOW_STR IP_STR "OSPF information\n" + "Instance ID\n" VRF_CMD_HELP_STR "All VRFs\n" "OSPF Graceful Restart\n" @@ -10779,8 +10780,20 @@ DEFPY (show_ip_ospf_gr_helper, int inst = 0; bool detail = false; + if (instance && instance != ospf_instance) + return CMD_NOT_MY_INSTANCE; + + ospf = ospf_lookup_instance(instance); + if (!ospf || !ospf->oi_running) + return CMD_SUCCESS; + OSPF_FIND_VRF_ARGS(argv, argc, idx_vrf, vrf_name, all_vrf); + if (instance && vrf_name) { + vty_out(vty, "%% VRF is not supported in instance mode\n"); + return CMD_WARNING; + } + if (argv_find(argv, argc, "detail", &idx)) detail = true;