From be4c5b90796a8c700d4b4f4133302e776374d5a5 Mon Sep 17 00:00:00 2001 From: Bob Gilligan Date: Wed, 17 Mar 2010 10:53:25 -0700 Subject: Bugfix 5458: Include interface name, if present, when deleting IPv6 routes. When deleting an IPv6 static route from Quagga, we have to specify the route precisely the same way it was originally configured. If the route includes an outgoing interface, it must be specified. If the route does not include an outgoing interface, one must not be specified. --- templates/protocols/static/route6/node.tag/next-hop/node.def | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'templates/protocols/static/route6') diff --git a/templates/protocols/static/route6/node.tag/next-hop/node.def b/templates/protocols/static/route6/node.tag/next-hop/node.def index 4d123637..31e75a92 100644 --- a/templates/protocols/static/route6/node.tag/next-hop/node.def +++ b/templates/protocols/static/route6/node.tag/next-hop/node.def @@ -1,6 +1,9 @@ tag: + type: ipv6 + help: Set the next-hop IPv6 router [REQUIRED] + end: if [[ -z "$VAR(./disable)" ]] then @@ -9,8 +12,12 @@ end: if ${vyatta_sbindir}/vyatta-gateway-static_route-check.pl \ "$VAR(../@)" "$VAR(@)" then + quagga_conf=`vtysh -c "show running-config" | \ + grep "^ipv6 route $VAR(../@) $VAR(@)"` + ifname=`echo $quagga_conf | awk '{print $5}'` + vtysh -c "configure terminal" \ - -c "no ipv6 route $VAR(../@) $VAR(@)" + -c "no ipv6 route $VAR(../@) $VAR(@) $ifname" fi else if [[ -n "$VAR(./distance/@)" ]] -- cgit v1.2.3