Based on the following commit, adjusted for glibc-2.28 in RHEL-8:

commit 5eabdb6a6ac1599d23dd5966a37417215950245f
Author: Andreas Schwab <schwab@suse.de>
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)
 	    {
