From 6973a9f4408a8f50c7b1cb211e2e3b247ec9e1aa Mon Sep 17 00:00:00 2001
From: Oliver Herms <oliver.herms@exaring.de>
Date: Wed, 24 Oct 2018 13:34:52 +0200
Subject: [PATCH] Fix fsm init

---
 protocols/bgp/server/fsm_address_family.go | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/protocols/bgp/server/fsm_address_family.go b/protocols/bgp/server/fsm_address_family.go
index 6bd56ad0..5c3540c9 100644
--- a/protocols/bgp/server/fsm_address_family.go
+++ b/protocols/bgp/server/fsm_address_family.go
@@ -53,6 +53,7 @@ func (f *fsmAddressFamily) init(n *routingtable.Neighbor) {
 
 	f.adjRIBIn = adjRIBIn.New(f.importFilter, contributingASNs, f.fsm.peer.routerID, f.fsm.peer.clusterID, f.addPathRX)
 	contributingASNs.Add(f.fsm.peer.localASN)
+
 	f.adjRIBIn.Register(f.rib)
 
 	f.adjRIBOut = adjRIBOut.New(n, f.exportFilter, !f.addPathTX.BestOnly)
@@ -68,7 +69,9 @@ func (f *fsmAddressFamily) init(n *routingtable.Neighbor) {
 func (f *fsmAddressFamily) bmpInit() {
 	f.adjRIBIn = adjRIBIn.New(filter.NewAcceptAllFilter(), &routingtable.ContributingASNs{}, f.fsm.peer.routerID, f.fsm.peer.clusterID, f.addPathRX)
 
-	f.adjRIBIn.Register(f.rib)
+	if f.rib != nil {
+		f.adjRIBIn.Register(f.rib)
+	}
 }
 
 func (f *fsmAddressFamily) bmpDispose() {
-- 
GitLab