Based on the following commit, adjusted for glibc-2.28 in RHEL-8: commit 5eabdb6a6ac1599d23dd5966a37417215950245f Author: Andreas Schwab Date: Wed Dec 6 14:48:22 2023 +0100 getaddrinfo: translate ENOMEM to EAI_MEMORY (bug 31163) When __resolv_context_get returns NULL due to out of memory, translate it to a return value of EAI_MEMORY. diff --git a/sysdeps/posix/getaddrinfo.c b/sysdeps/posix/getaddrinfo.c index 46046504a6858f2e..d0708f3e84e20025 100644 --- a/sysdeps/posix/getaddrinfo.c +++ b/sysdeps/posix/getaddrinfo.c @@ -777,7 +777,14 @@ gaih_inet (const char *name, const struct gaih_service *service, res_ctx = __resolv_context_get (); res_enable_inet6 = __resolv_context_disable_inet6 (res_ctx); if (res_ctx == NULL) - no_more = 1; + { + if (errno == ENOMEM) + { + result = -EAI_MEMORY; + goto free_and_return; + } + no_more = 1; + } while (!no_more) {