mirror of
https://gitlab.nic.cz/labs/bird.git
synced 2024-11-08 12:18:42 +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:
parent
bf8d7bba9e
commit
3a8ca7abbc
@ -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;
|
||||||
|
Loading…
Reference in New Issue
Block a user