diff options
| author | Donald Sharp <sharpd@nvidia.com> | 2024-12-05 13:12:00 -0500 |
|---|---|---|
| committer | Donald Sharp <sharpd@nvidia.com> | 2024-12-11 12:27:31 -0500 |
| commit | 9f88cb56dc0fe7a4ce864f672c6ca420fcd420c2 (patch) | |
| tree | 1a02b79974c2c864e2891a2f29ee014faba2070f /lib/json.c | |
| parent | 024c9446a5157e23a129ef56e127e7229f1d6bf1 (diff) | |
bgpd: Fix evpn bestpath calculation when path is not established
If you have a bestpath list that looks something like this:
<local evpn mac route>
<learned from peer out swp60>
<learned from peer out swp57>
And a network event happens that causes the peer out swp60
to not be in an established state, yet we still have the
path_info for the destination for swp60, bestpath
will currently end up with this order:
<learned from peer out swp60>
<local evpn mac route>
<learned from peer out swp57>
This causes the local evpn mac route to be deleted in zebra( Wrong! ).
This is happening because swp60 is skipped in bestpath calculation and
not considered to be a path yet it stays at the front of the list.
Modify bestpath calculation such that when pulling the unsorted_list
together to pull path info's into that list when they are also
not in a established state.
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Diffstat (limited to 'lib/json.c')
0 files changed, 0 insertions, 0 deletions
