about summary refs log tree commit diff
path: root/sysdeps
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2009-12-10 15:44:26 -0800
committerPetr Baudis <pasky@ucw.cz>2010-01-18 17:54:36 +0100
commita4b737aa083bd422b15f6dc04b4ea35d18b111e9 (patch)
tree57e6dc44a75f3f440b620578267b05cacd9810b8 /sysdeps
parent3decedce640208c25323bca68c98381c640ab06f (diff)
downloadglibc-a4b737aa083bd422b15f6dc04b4ea35d18b111e9.tar.gz
glibc-a4b737aa083bd422b15f6dc04b4ea35d18b111e9.tar.xz
glibc-a4b737aa083bd422b15f6dc04b4ea35d18b111e9.zip
Fix a few error cases in *name4_r lookup handling.
(cherry picked from commit a682a1bf553b1efe4dbb03207fece5b719cec482)
Diffstat (limited to 'sysdeps')
-rw-r--r--sysdeps/posix/getaddrinfo.c9
1 files changed, 2 insertions, 7 deletions
diff --git a/sysdeps/posix/getaddrinfo.c b/sysdeps/posix/getaddrinfo.c
index a788d18fee..62c38f69be 100644
--- a/sysdeps/posix/getaddrinfo.c
+++ b/sysdeps/posix/getaddrinfo.c
@@ -719,13 +719,8 @@ gaih_inet (const char *name, const struct gaih_service *service,
 		      if (status != NSS_STATUS_TRYAGAIN
 			  || rc != ERANGE || herrno != NETDB_INTERNAL)
 			{
-			  if (herrno == NETDB_INTERNAL)
-			    {
-			      __set_h_errno (herrno);
-			      _res.options = old_res_options;
-			      return -EAI_SYSTEM;
-			    }
-			  if (herrno == TRY_AGAIN)
+			  if (status == NSS_STATUS_TRYAGAIN
+			      && herrno == TRY_AGAIN)
 			    no_data = EAI_AGAIN;
 			  else
 			    no_data = herrno == NO_DATA;