summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDonald Sharp <donaldsharp72@gmail.com>2025-03-20 08:26:50 -0400
committerGitHub <noreply@github.com>2025-03-20 08:26:50 -0400
commit274b522fdd5fd0216f6e509255961c289e3ec11e (patch)
tree62655a56ee4a34277c5970e6b1b8f277d0b61d9e
parent94d3ae04604269e722cebb989db31db83572cac1 (diff)
parenta611fc97293e1c3a9f9e9581d2cce60bac196583 (diff)
Merge pull request #18437 from FRRouting/mergify/bp/stable/10.3/pr-18435
bgpd: Fix leaked memory when showing some bgp routes (backport #18435)
-rw-r--r--bgpd/bgp_route.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/bgpd/bgp_route.c b/bgpd/bgp_route.c
index 678a6caa1a..5ec122d2a9 100644
--- a/bgpd/bgp_route.c
+++ b/bgpd/bgp_route.c
@@ -15248,11 +15248,15 @@ static int peer_adj_routes(struct vty *vty, struct peer *peer, afi_t afi,
} else {
json_object_object_add(json_ar, rd_str, json_routes);
}
- }
+ } else if (json_routes)
+ json_object_free(json_routes);
output_count += output_count_per_rd;
filtered_count += filtered_count_per_rd;
}
+ if (json_ar &&
+ (type == bgp_show_adj_route_advertised || type == bgp_show_adj_route_received))
+ json_object_free(json_ar);
if (first == false && json_routes)
vty_out(vty, "}");
} else {