summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@cumulusnetworks.com>2019-08-11 11:58:36 -0400
committerGitHub <noreply@github.com>2019-08-11 11:58:36 -0400
commit269bca525d1601ad83554e006be72c6bb3485f4f (patch)
treeff17e06e3da00b9324561d8ca310de12db4205b6
parentab0ef7a3920131edf680a866b21bd6e03fd92041 (diff)
parentdfb6fd1dd119a5bd660012e940e8328534547e76 (diff)
Merge pull request #4816 from NaveenThanikachalam/610
bgpd: Assertion failed during shutdown.
-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 abad1db5a2..a372568373 100644
--- a/bgpd/bgp_route.c
+++ b/bgpd/bgp_route.c
@@ -5332,6 +5332,13 @@ static void bgp_purge_af_static_redist_routes(struct bgp *bgp, afi_t afi,
struct bgp_node *rn;
struct bgp_path_info *pi;
+ /* Do not install the aggregate route if BGP is in the
+ * process of termination.
+ */
+ if (bgp_flag_check(bgp, BGP_FLAG_DELETE_IN_PROGRESS) ||
+ (bgp->peer_self == NULL))
+ return;
+
table = bgp->rib[afi][safi];
for (rn = bgp_table_top(table); rn; rn = bgp_route_next(rn)) {
for (pi = bgp_node_get_bgp_path_info(rn); pi; pi = pi->next) {