summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@nvidia.com>2023-09-10 09:53:54 -0400
committerDonald Sharp <sharpd@nvidia.com>2023-09-11 12:45:59 -0400
commit1195c44f4bad73fd5e02fa9013efc2388e79b46d (patch)
tree99a39921e9f8aca478766d99d6c0e033befcbde5
parentc955a3cbeced0539b3dbb12bb1c235b264f0d6b6 (diff)
bgpd: In bgp_clear_route_table ensure dest is still usable.
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
-rw-r--r--bgpd/bgp_route.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/bgpd/bgp_route.c b/bgpd/bgp_route.c
index 367398e5fd..3ef495cd5c 100644
--- a/bgpd/bgp_route.c
+++ b/bgpd/bgp_route.c
@@ -5690,9 +5690,10 @@ static void bgp_clear_route_table(struct peer *peer, afi_t afi, safi_t safi,
if (pi->peer != peer)
continue;
- if (force)
- bgp_path_info_reap(dest, pi);
- else {
+ if (force) {
+ dest = bgp_path_info_reap(dest, pi);
+ assert(dest);
+ } else {
struct bgp_clear_node_queue *cnq;
/* both unlocked in bgp_clear_node_queue_del */