From a1008eead254dba3877bdc7860eab30c583f8623 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vojt=C4=9Bch=20Vobr?= <156214846+vojtechvobr@users.noreply.github.com> Date: Thu, 15 Feb 2024 13:47:25 +0100 Subject: [PATCH] fix leaking DNS suffix search list on Windows (#711) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ares__strsplit provides a newly allocated buffer, so suffix list in line variable isn't referenced anymore. Related ares_free seems to have gone missing during refactoring made in #594 Fix By: Vojtěch Vobr (@vojtechvobr) --- src/lib/ares_sysconfig.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/lib/ares_sysconfig.c b/src/lib/ares_sysconfig.c index 6b5408da..825008b7 100644 --- a/src/lib/ares_sysconfig.c +++ b/src/lib/ares_sysconfig.c @@ -624,6 +624,7 @@ static ares_status_t ares__init_sysconfig_windows(ares_sysconfig_t *sysconfig) if (get_SuffixList_Windows(&line)) { sysconfig->domains = ares__strsplit(line, ", ", &sysconfig->ndomains); + ares_free(line); if (sysconfig->domains == NULL) { status = ARES_EFILE; }