diff options
author | Donald Sharp <sharpd@cumulusnetworks.com> | 2020-09-11 19:05:55 +0200 |
---|---|---|
committer | Donald Sharp <sharpd@nvidia.com> | 2020-09-12 02:04:45 +0200 |
commit | 166a132d35db81045c3e7d164325eb636678934d (patch) | |
tree | 437346ab12d5158523273b8f342a051a2883163f /pbrd | |
parent | bgpd, lib, pbrd, zebra: Pass by ifname (diff) | |
download | frr-166a132d35db81045c3e7d164325eb636678934d.tar.xz frr-166a132d35db81045c3e7d164325eb636678934d.zip |
pbrd: Ensure rule is installed on interface up
If we are experiencing an interface that is bouncing
very fast and the last operation that we experienced
was a ifdown we will send rule deletions associated
with that interface. If we have not received notification
that hte rule was removed *but* we immiedately get another
ifup notification when we go to install the rule we
are deciding that it's not ready to send down again,
as that we still think it is installed.
Force the rule installation when we have a interface up
event.
Ticket: CM-31042
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Diffstat (limited to 'pbrd')
-rw-r--r-- | pbrd/pbr_map.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/pbrd/pbr_map.c b/pbrd/pbr_map.c index d6500af88..fe2778c87 100644 --- a/pbrd/pbr_map.c +++ b/pbrd/pbr_map.c @@ -293,7 +293,7 @@ void pbr_map_policy_interface_update(const struct interface *ifp, bool state_up) for (ALL_LIST_ELEMENTS_RO(pbrm->seqnumbers, node, pbrms)) for (ALL_LIST_ELEMENTS_RO(pbrm->incoming, inode, pmi)) if (pmi->ifp == ifp && pbr_map_interface_is_valid(pmi)) - pbr_send_pbr_map(pbrms, pmi, state_up, false); + pbr_send_pbr_map(pbrms, pmi, state_up, true); } static void pbrms_vrf_update(struct pbr_map_sequence *pbrms, |