From 95619d069070cd820171f1cd3d88088dbc909c52 Mon Sep 17 00:00:00 2001 From: FUJITA Tomonori Date: Wed, 21 Oct 2015 10:21:54 +0900 Subject: server: apply policy before sending for ROUTE_REFRESH Rather than just sending routes in the AdjOut, apply policies to routes in the Loc and sends them. Signed-off-by: FUJITA Tomonori --- server/server.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'server/server.go') diff --git a/server/server.go b/server/server.go index 5f6ec58a..60aa4d3d 100644 --- a/server/server.go +++ b/server/server.go @@ -731,7 +731,7 @@ func (server *BgpServer) handleFSMMessage(peer *Peer, e *fsmMsg, incoming chan * } server.broadcastMsgs = append(server.broadcastMsgs, m) } - pathList, _ := peer.getBestFromLocal() + pathList, _ := peer.getBestFromLocal(peer.configuredRFlist()) if len(pathList) > 0 { peer.adjRib.UpdateOut(pathList) msgs = append(msgs, newSenderMsg(peer, table.CreateUpdateMsgFromPaths(pathList))) @@ -1487,9 +1487,9 @@ func (server *BgpServer) handleGrpc(grpcReq *GrpcRequest) []*SenderMsg { logOp(grpcReq.Name, "Neighbor soft reset out") } for _, peer := range peers { - peer.adjRib.DropOut(peer.configuredRFlist()) - - pathList, filtered := peer.getBestFromLocal() + rfList := peer.configuredRFlist() + peer.adjRib.DropOut(rfList) + pathList, filtered := peer.getBestFromLocal(rfList) if len(pathList) > 0 { peer.adjRib.UpdateOut(pathList) msgs = append(msgs, newSenderMsg(peer, table.CreateUpdateMsgFromPaths(pathList))) -- cgit v1.2.3