From: David Lamparter Date: Thu, 22 Jan 2015 18:03:53 +0000 (+0100) Subject: zebra: fix optional distance on static mrib route X-Git-Tag: frr-2.0-rc1~881 X-Git-Url: https://git.puffer.fish/?a=commitdiff_plain;h=b8a969154838b6875799f6a1851b7df9d78b3cf9;p=mirror%2Ffrr.git zebra: fix optional distance on static mrib route Unfortunately, the quagga CLI parser doesn't support [<1-255>]. Fix by working around with an alias. Replaces the following commits: - zebra: mrib: [no] ip mroute - require distance. - zebra: mrib: [no] ip mroute - make distance optional. (Rewritten as alias) Cc: Everton Marques Cc: Balaji G Signed-off-by: David Lamparter --- diff --git a/zebra/zebra_vty.c b/zebra/zebra_vty.c index 14025e7f3a..597476296d 100644 --- a/zebra/zebra_vty.c +++ b/zebra/zebra_vty.c @@ -167,9 +167,9 @@ zebra_static_ipv4 (struct vty *vty, safi_t safi, int add_cmd, } /* Static unicast routes for multicast RPF lookup. */ -DEFUN (ip_mroute, - ip_mroute_cmd, - "ip mroute A.B.C.D/M (A.B.C.D|INTERFACE) [<1-255>]", +DEFUN (ip_mroute_dist, + ip_mroute_dist_cmd, + "ip mroute A.B.C.D/M (A.B.C.D|INTERFACE) <1-255>", IP_STR "Configure static unicast route into MRIB for multicast RPF lookup\n" "IP destination prefix (e.g. 10.0.0.0/8)\n" @@ -177,12 +177,21 @@ DEFUN (ip_mroute, "Nexthop interface name\n" "Distance\n") { - return zebra_static_ipv4 (vty, SAFI_MULTICAST, 1, argv[0], NULL, argv[1], NULL, NULL, argv[2], NULL); + return zebra_static_ipv4 (vty, SAFI_MULTICAST, 1, argv[0], NULL, argv[1], NULL, NULL, argc > 2 ? argv[2] : NULL, NULL); } -DEFUN (no_ip_mroute, - no_ip_mroute_cmd, - "no ip mroute A.B.C.D/M (A.B.C.D|INTERFACE) [<1-255>]", +ALIAS (ip_mroute_dist, + ip_mroute_cmd, + "ip mroute A.B.C.D/M (A.B.C.D|INTERFACE)", + IP_STR + "Configure static unicast route into MRIB for multicast RPF lookup\n" + "IP destination prefix (e.g. 10.0.0.0/8)\n" + "Nexthop address\n" + "Nexthop interface name\n") + +DEFUN (no_ip_mroute_dist, + no_ip_mroute_dist_cmd, + "no ip mroute A.B.C.D/M (A.B.C.D|INTERFACE) <1-255>", IP_STR "Configure static unicast route into MRIB for multicast RPF lookup\n" "IP destination prefix (e.g. 10.0.0.0/8)\n" @@ -190,9 +199,19 @@ DEFUN (no_ip_mroute, "Nexthop interface name\n" "Distance\n") { - return zebra_static_ipv4 (vty, SAFI_MULTICAST, 0, argv[0], NULL, argv[1], NULL, NULL, argv[2], NULL); + return zebra_static_ipv4 (vty, SAFI_MULTICAST, 0, argv[0], NULL, argv[1], NULL, NULL, argc > 2 ? argv[2] : NULL, NULL); } +ALIAS (no_ip_mroute_dist, + no_ip_mroute_cmd, + "no ip mroute A.B.C.D/M (A.B.C.D|INTERFACE)", + NO_STR + IP_STR + "Configure static unicast route into MRIB for multicast RPF lookup\n" + "IP destination prefix (e.g. 10.0.0.0/8)\n" + "Nexthop address\n" + "Nexthop interface name\n") + DEFUN (show_ip_rpf, show_ip_rpf_cmd, "show ip rpf", @@ -5827,7 +5846,9 @@ zebra_vty_init (void) install_element (CONFIG_NODE, &allow_external_route_update_cmd); install_element (CONFIG_NODE, &no_allow_external_route_update_cmd); install_element (CONFIG_NODE, &ip_mroute_cmd); + install_element (CONFIG_NODE, &ip_mroute_dist_cmd); install_element (CONFIG_NODE, &no_ip_mroute_cmd); + install_element (CONFIG_NODE, &no_ip_mroute_dist_cmd); install_element (CONFIG_NODE, &ip_route_cmd); install_element (CONFIG_NODE, &ip_route_tag_cmd); install_element (CONFIG_NODE, &ip_route_flags_cmd);