summaryrefslogtreecommitdiffstats
path: root/bgpd/bgp_updgrp.c
diff options
context:
space:
mode:
authorDonatas Abraitis <donatas@opensourcerouting.org>2022-07-23 19:47:27 +0200
committerDonatas Abraitis <donatas@opensourcerouting.org>2022-07-25 09:20:28 +0200
commite92cf867a6befdd3b3240368b72b5454c5d921b1 (patch)
tree59df08cbdd003eb75bb410c2a8f3d381d0e718b4 /bgpd/bgp_updgrp.c
parentMerge pull request #11652 from pguibert6WIND/path_fini (diff)
downloadfrr-e92cf867a6befdd3b3240368b72b5454c5d921b1.tar.xz
frr-e92cf867a6befdd3b3240368b72b5454c5d921b1.zip
bgpd: Cleanup subgroup hash when we delete/merge a subgroup
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
Diffstat (limited to '')
-rw-r--r--bgpd/bgp_updgrp.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/bgpd/bgp_updgrp.c b/bgpd/bgp_updgrp.c
index 17b3db78a..f43c4ef09 100644
--- a/bgpd/bgp_updgrp.c
+++ b/bgpd/bgp_updgrp.c
@@ -115,8 +115,10 @@ static void sync_init(struct update_subgroup *subgrp,
static void sync_delete(struct update_subgroup *subgrp)
{
XFREE(MTYPE_BGP_SYNCHRONISE, subgrp->sync);
- if (subgrp->hash)
+ if (subgrp->hash) {
+ hash_clean(subgrp->hash, (void (*)(void *))baa_free);
hash_free(subgrp->hash);
+ }
subgrp->hash = NULL;
if (subgrp->work)
stream_free(subgrp->work);