0
0
mirror of https://gitlab.nic.cz/labs/bird.git synced 2024-12-22 09:41:54 +00:00

Nest: Prevent withdraws from propagation back to source protocol (for accepted mode)

Update for one of previous patches, handles the the issue for
first-accepted mode of route propagation.
This commit is contained in:
Ondrej Zajicek (work) 2019-02-19 16:26:09 +01:00
parent bf8d7bba9e
commit 3a8ca7abbc

View File

@ -621,7 +621,7 @@ rt_notify_basic(struct channel *c, net *net, rte *new0, rte *old0, int refeed)
static void static void
rt_notify_accepted(struct channel *c, net *net, rte *new_changed, rte *old_changed, rte *before_old, int feed) rt_notify_accepted(struct channel *c, net *net, rte *new_changed, rte *old_changed, rte *before_old, int feed)
{ {
// struct proto *p = c->proto; struct proto *p = c->proto;
rte *r; rte *r;
rte *new_best = NULL; rte *new_best = NULL;
@ -698,7 +698,9 @@ rt_notify_accepted(struct channel *c, net *net, rte *new_changed, rte *old_chang
*/ */
/* Hack for changed filters */ /* Hack for changed filters */
if (old_changed && (old_changed->lastmod <= c->last_tx_filter_change)) if (old_changed &&
(p != old_changed->sender->proto) &&
(old_changed->lastmod <= c->last_tx_filter_change))
{ {
old_best = old_changed; old_best = old_changed;
goto found; goto found;