summaryrefslogtreecommitdiff
path: root/bgpd/bgp_route.c
diff options
context:
space:
mode:
authorhasso <hasso>2005-08-26 12:58:38 +0000
committerhasso <hasso>2005-08-26 12:58:38 +0000
commitb7395791a31f7b734094d032998ab632136f36f1 (patch)
tree8b8e5efb0c0082b882f8a5a9db9eabd3aa9841e7 /bgpd/bgp_route.c
parenta969459c92d6b6cc557a0961aca14059e791bc08 (diff)
* bgp_route.c: Third (?) attempt to fix best selection breakage
introduced long time ago with route server patch. Hopefully it's last case to fix - route-server client not in peer group. [backport candidate]
Diffstat (limited to 'bgpd/bgp_route.c')
-rw-r--r--bgpd/bgp_route.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/bgpd/bgp_route.c b/bgpd/bgp_route.c
index 862fd433..14fa86a5 100644
--- a/bgpd/bgp_route.c
+++ b/bgpd/bgp_route.c
@@ -1286,6 +1286,13 @@ bgp_process_rsclient (struct bgp_process_queue *pq)
}
else
{
+ if (old_select)
+ UNSET_FLAG (old_select->flags, BGP_INFO_SELECTED);
+ if (new_select)
+ {
+ SET_FLAG (new_select->flags, BGP_INFO_SELECTED);
+ UNSET_FLAG (new_select->flags, BGP_INFO_ATTR_CHANGED);
+ }
bgp_process_announce_selected (rsclient, new_select, rn,
&attr, afi, safi);
}