summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--proto/bgp/bgp.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/proto/bgp/bgp.c b/proto/bgp/bgp.c
index b26e5e87..d6c2b7e4 100644
--- a/proto/bgp/bgp.c
+++ b/proto/bgp/bgp.c
@@ -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;