From d52ecaa1de6efa1fc400c8f25d674f40babc6e2f Mon Sep 17 00:00:00 2001 From: Donald Sharp Date: Sat, 10 Jun 2017 16:13:51 -0400 Subject: [PATCH] eigrpd: Fix leak of ep Signed-off-by: Donald Sharp --- eigrpd/eigrp_query.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/eigrpd/eigrp_query.c b/eigrpd/eigrp_query.c index 774461a097..3ef8f9a975 100644 --- a/eigrpd/eigrp_query.c +++ b/eigrpd/eigrp_query.c @@ -160,6 +160,7 @@ eigrp_send_query (struct eigrp_interface *ei) struct eigrp_neighbor *nbr; struct eigrp_prefix_entry *pe; char has_tlv; + bool ep_saved = false; ep = eigrp_packet_new(ei->ifp->mtu); @@ -218,6 +219,7 @@ eigrp_send_query (struct eigrp_interface *ei) { /*Put packet to retransmission queue*/ eigrp_fifo_push_head(nbr->retrans_queue, ep); + ep_saved = true; if (nbr->retrans_queue->count == 1) { @@ -225,4 +227,7 @@ eigrp_send_query (struct eigrp_interface *ei) } } } + + if (!ep_saved) + eigrp_packet_free(ep); }