After actually reading the full CONTRIBUTING file, I now include my patch with 
a better commit message. Sorry about that.
>From b449379a7b36c213408b1ae28924475c413bd6ba Mon Sep 17 00:00:00 2001
From: Thayne McCombs <tha...@lucidchart.com>
Date: Thu, 7 Jan 2021 22:11:05 -0700
Subject: [PATCH] BUG/MINOR: server: Memory leak of proxy.used_server_addr
 during deinit

GitHub Issue #1037 Reported a memory leak in deinit() caused by an
allocation made in sa2str() that was stored in srv_set_addr_desc().

When destroying each server for a proxy in deinit, include freeing the
memory in the key of server->addr_node.

The leak was introduced in commit 92149f9a8 ("MEDIUM: stick-tables: Add
srvkey option to stick-table") which is not in any released version so
no backport is needed.

Cc: Tim Duesterhus <t...@bastelstu.be>
---
 src/haproxy.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/haproxy.c b/src/haproxy.c
index a28b45fb9..1d16b507d 100644
--- a/src/haproxy.c
+++ b/src/haproxy.c
@@ -2649,6 +2649,7 @@ void deinit(void)
 			free(s->available_conns);
 			free(s->curr_idle_thr);
 			free(s->resolvers_id);
+			free(s->addr_node.key);
 
 			if (s->use_ssl == 1 || s->check.use_ssl == 1 || (s->proxy->options & PR_O_TCPCHK_SSL)) {
 				if (xprt_get(XPRT_SSL) && xprt_get(XPRT_SSL)->destroy_srv)
-- 
2.30.0

Reply via email to