BGP: Fix setup with multiple dynamic BGP ranges

Based on a patch from Liam Nattrass, thanks.
This commit is contained in:
Ondrej Zajicek (work) 2019-09-17 14:45:14 +02:00
parent 5235c3f78d
commit eb1e43a9af

View file

@ -1551,6 +1551,14 @@ bgp_start(struct proto *P)
lock->type = OBJLOCK_TCP;
lock->hook = bgp_start_locked;
lock->data = p;
/* For dynamic BGP, we use inst 1 to avoid collisions with regular BGP */
if (bgp_is_dynamic(p))
{
lock->addr = net_prefix(p->cf->remote_range);
lock->inst = 1;
}
olock_acquire(lock);
return PS_START;