aboutsummaryrefslogtreecommitdiff
path: root/resolv
diff options
context:
space:
mode:
authorJan Palus <jpalus@fastmail.com>2023-10-30 19:57:01 +0100
committerFlorian Weimer <fweimer@redhat.com>2023-11-20 15:03:29 +0100
commitf2aaf18af50109b0982723bdf4e0a3bca2f8d3d6 (patch)
tree60be5f0a2da51c42b0bdcd9acc69a7910579b1b1 /resolv
parentcfb5a97a93ea656e3b2263e42142a4032986d9ba (diff)
downloadglibc-f2aaf18af50109b0982723bdf4e0a3bca2f8d3d6.zip
glibc-f2aaf18af50109b0982723bdf4e0a3bca2f8d3d6.tar.gz
glibc-f2aaf18af50109b0982723bdf4e0a3bca2f8d3d6.tar.bz2
resolv: free only initialized items from gai pool
pool_max_size denotes total allocated rows in pool but possibly not yet initialized. it's pool_size that represents number of actually occupied rows hence use it when freeing pool to avoid freeing random addresses. Signed-off-by: Jan Palus <jpalus@fastmail.com> Reviewed-by: Florian Weimer <fweimer@redhat.com>
Diffstat (limited to 'resolv')
-rw-r--r--resolv/gai_misc.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/resolv/gai_misc.c b/resolv/gai_misc.c
index d02bd7e..266ed69 100644
--- a/resolv/gai_misc.c
+++ b/resolv/gai_misc.c
@@ -1,4 +1,5 @@
/* Copyright (C) 2001-2023 Free Software Foundation, Inc.
+ Copyright The GNU Toolchain Authors.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -442,7 +443,7 @@ __gai_freemem (void)
{
size_t row;
- for (row = 0; row < pool_max_size; ++row)
+ for (row = 0; row < pool_size; ++row)
free (pool[row]);
free (pool);