Fixes a bug related to mixed up neighbor events in BGP.
Neighbor events related to received route next hops got mixed up with sticky neighbor node for an IP of the BGP peer. If a neighbor for a next hop disappears, BGP session is shut down.
This commit is contained in:
parent
00192d5ab8
commit
b21955e058
1 changed files with 3 additions and 0 deletions
|
@ -743,6 +743,9 @@ bgp_neigh_notify(neighbor *n)
|
||||||
{
|
{
|
||||||
struct bgp_proto *p = (struct bgp_proto *) n->proto;
|
struct bgp_proto *p = (struct bgp_proto *) n->proto;
|
||||||
|
|
||||||
|
if (! (n->flags & NEF_STICKY))
|
||||||
|
return;
|
||||||
|
|
||||||
if (n->scope > 0)
|
if (n->scope > 0)
|
||||||
{
|
{
|
||||||
if ((p->p.proto_state == PS_START) && (p->start_state == BSS_PREPARE))
|
if ((p->p.proto_state == PS_START) && (p->start_state == BSS_PREPARE))
|
||||||
|
|
Loading…
Reference in a new issue