summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@cumulusnetworks.com>2017-03-07 08:45:24 -0500
committerDonald Sharp <sharpd@cumulusnetworks.com>2017-03-07 08:45:24 -0500
commit080b97f2ab434e257b30a2f11883aa1851e75834 (patch)
treeba2032aa2b366978fa1baea3e3e4a5f1f0b8ca37
parented228401a1275289a4d98f1bb70aa8ab432ab5b1 (diff)
bgpd: Clean up bfd memory *before* deleting the peer
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
-rw-r--r--bgpd/bgpd.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/bgpd/bgpd.c b/bgpd/bgpd.c
index ef633c16e7..5280731234 100644
--- a/bgpd/bgpd.c
+++ b/bgpd/bgpd.c
@@ -2485,14 +2485,14 @@ peer_group_delete (struct peer_group *group)
XFREE(MTYPE_BGP_PEER_HOST, group->name);
group->name = NULL;
+ bfd_info_free(&(group->conf->bfd_info));
+
group->conf->group = NULL;
peer_delete (group->conf);
/* Delete from all peer_group list. */
listnode_delete (bgp->group, group);
- bfd_info_free(&(group->conf->bfd_info));
-
peer_group_free (group);
return 0;