]> git.puffer.fish Git - matthieu/frr.git/commitdiff
Zebra: Fix static NHT for multiple routes scenario
authorvivek <vivek@cumulusnetworks.com>
Mon, 21 Sep 2015 04:20:29 +0000 (21:20 -0700)
committervivek <vivek@cumulusnetworks.com>
Mon, 21 Sep 2015 04:20:29 +0000 (21:20 -0700)
Ticket: CM-7482
Reviewed By: CCR-3518
Testing Done: Manual verification (on 2.5-br)

When a static route has a nexthop change but the route is also learnt
through another protocol, ensure that the nexthop tracking code marks
the correct route entry (RIB) for processing.

This is a port of patch zebra-static-nht-fixes2.patch from 2.5-br.

Signed-off-by: Vivek Venkatraman <vivek@cumulusnetworks.com>
Reviewed-by: Donald Sharp <sharpd@cumulusnetworks.com>
Reviewed-by: Dinesh Dutt <ddutt@cumulusnetworks.com>
zebra/zebra_rnh.c

index 73a81b13604c335d31123bbe903d7ca45d07ffc8..eea7759589efa6ccf6bbbb8f7f18a1815e908c13 100644 (file)
@@ -476,7 +476,8 @@ zebra_evaluate_rnh (int vrfid, int family, int force, rnh_type_t type,
            {
              RNODE_FOREACH_RIB(static_rn, srib)
                {
-                 break;        /* pick the first and only(?) rib for static */
+                  if (srib->type == ZEBRA_ROUTE_STATIC)
+                    break;     /* currently works for only 1 static route. */
                }
 
              if (!srib)