]> git.puffer.fish Git - matthieu/frr.git/commit
zebra: Fix rnh old -vs- new comparison
authorDonald Sharp <sharpd@cumulusnetworks.com>
Mon, 24 Jun 2019 13:50:55 +0000 (09:50 -0400)
committerDonald Sharp <sharpd@cumulusnetworks.com>
Mon, 24 Jun 2019 13:50:55 +0000 (09:50 -0400)
commit60c67010f25bd84258acf1a7e19ec7e3d5dc19b6
tree6226ee093024c3b12f29da6aac854eb3308ae31c
parent0c3bbed4e670a24134bd0bcb18b56634c542fcf5
zebra: Fix rnh old -vs- new comparison

1) If we are moving the nexthop we are tracking to
a new rn in the rib, then we know that the route
to get to that nexthop has changed.  As such
we should notify the upper level.

This manifested itself because the code had a trigraph `?`
in the wrong order.  Put the comparison in the right order.

2) If we are re-matching to the same rn and we call compare_state
then we need to see if our stored nexthops are the same or different.

If they are the same we should not notify.  If they are different
we should notify.  compare_state was only comparing the flags
on a route and since those are not necessarily the right flags
to look at( and we are well after the fact that the route has
already changed and been processed ) let's just compare
the nexthops to see if they are the same or different.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
zebra/zebra_rnh.c