summaryrefslogtreecommitdiff
path: root/bgpd/bgp_updgrp.c
diff options
context:
space:
mode:
Diffstat (limited to 'bgpd/bgp_updgrp.c')
-rw-r--r--bgpd/bgp_updgrp.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/bgpd/bgp_updgrp.c b/bgpd/bgp_updgrp.c
index 2788a8ea4f..621a14014f 100644
--- a/bgpd/bgp_updgrp.c
+++ b/bgpd/bgp_updgrp.c
@@ -909,7 +909,6 @@ static void update_subgroup_add_peer(struct update_subgroup *subgrp,
bpacket_add_peer(pkt, paf);
- bpacket_queue_sanity_check(SUBGRP_PKTQ(subgrp));
if (BGP_DEBUG(update_groups, UPDATE_GROUPS))
zlog_debug("peer %s added to subgroup s%" PRIu64,
paf->peer->host, subgrp->id);
@@ -1229,8 +1228,6 @@ static int update_subgroup_copy_packets(struct update_subgroup *dest,
pkt = bpacket_next(pkt);
}
- bpacket_queue_sanity_check(SUBGRP_PKTQ(dest));
-
return count;
}
@@ -1387,6 +1384,11 @@ static int updgrp_policy_update_walkcb(struct update_group *updgrp, void *arg)
}
UPDGRP_FOREACH_SUBGRP (updgrp, subgrp) {
+ /* Avoid supressing duplicate routes later
+ * when processing in subgroup_announce_table().
+ */
+ SET_FLAG(subgrp->sflags, SUBGRP_STATUS_FORCE_UPDATES);
+
if (changed) {
if (bgp_debug_update(NULL, NULL, updgrp, 0))
zlog_debug(