summaryrefslogtreecommitdiffhomepage
path: root/server
diff options
context:
space:
mode:
authorISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>2016-05-21 09:52:14 +0000
committerFUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>2016-05-23 09:46:53 +0900
commit5f25a1b6b3a99e647dd4dc3f266e8446cde85342 (patch)
treefa158d5a352b122f4054f95ab4ebb805a555bf8c /server
parent90c8306a9c09823924e1a8b867a09c370c741722 (diff)
server: add missing call of processOutgoingPaths()
Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
Diffstat (limited to 'server')
-rw-r--r--server/server.go9
1 files changed, 3 insertions, 6 deletions
diff --git a/server/server.go b/server/server.go
index df25e91b..9761fc28 100644
--- a/server/server.go
+++ b/server/server.go
@@ -679,19 +679,16 @@ func (server *BgpServer) propagateUpdate(peer *Peer, pathList []*table.Path) ([]
} else {
candidates = rib.GetBestPathList(peer.TableID(), fs)
}
- paths := make([]*table.Path, 0, len(pathList))
+ paths := make([]*table.Path, 0, len(candidates))
for _, p := range candidates {
- t := false
for _, ext := range p.GetExtCommunities() {
if ext.String() == rt.String() {
- t = true
+ paths = append(paths, p)
break
}
}
- if t {
- paths = append(paths, p.Clone(path.IsWithdraw))
- }
}
+ paths = peer.processOutgoingPaths(paths, nil)
msgs = append(msgs, newSenderMsg(peer, paths, nil, false))
}
}