[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

r4283 - in glibc-package/branches/eglibc-2.11/debian: . patches patches/any



Author: aurel32
Date: 2010-05-24 16:51:52 +0000 (Mon, 24 May 2010)
New Revision: 4283

Added:
   glibc-package/branches/eglibc-2.11/debian/patches/any/cvs-getaddrinfo.diff
Modified:
   glibc-package/branches/eglibc-2.11/debian/changelog
   glibc-package/branches/eglibc-2.11/debian/patches/series
Log:
  * Add debian/patches/any/cvs-getaddrinfo.diff from upstream to not abort
    the getaddrinfo loop on the first successful.



Modified: glibc-package/branches/eglibc-2.11/debian/changelog
===================================================================
--- glibc-package/branches/eglibc-2.11/debian/changelog	2010-05-24 16:45:48 UTC (rev 4282)
+++ glibc-package/branches/eglibc-2.11/debian/changelog	2010-05-24 16:51:52 UTC (rev 4283)
@@ -77,6 +77,8 @@
   * Replace debian/patches/submitted/cvs-stat-issock.diff by the upstream patch
     debian/patches/any/cvs-stat-issock.diff.
   * Explictely call /sbin/start-stop-daemon in nscd.init.  Closes: bug#575404.
+  * Add debian/patches/any/cvs-getaddrinfo.diff from upstream to not abort
+    the getaddrinfo loop on the first successful.
 
   [ Samuel Thibault ]
   * debian/patches/hurd-i386/submitted-rtld_lock_recursive.diff: New patch to

Added: glibc-package/branches/eglibc-2.11/debian/patches/any/cvs-getaddrinfo.diff
===================================================================
--- glibc-package/branches/eglibc-2.11/debian/patches/any/cvs-getaddrinfo.diff	                        (rev 0)
+++ glibc-package/branches/eglibc-2.11/debian/patches/any/cvs-getaddrinfo.diff	2010-05-24 16:51:52 UTC (rev 4283)
@@ -0,0 +1,38 @@
+2010-03-26  Ulrich Drepper  <drepper@redhat.com>
+
+	* sysdeps/posix/getaddrinfo.c (gaih_inet): Don't assume success always
+	means aborting the loop over the NSS methods.
+ 
+diff --git a/sysdeps/posix/getaddrinfo.c b/sysdeps/posix/getaddrinfo.c
+index 8b7e38f..597189f 100644
+--- a/sysdeps/posix/getaddrinfo.c
++++ b/sysdeps/posix/getaddrinfo.c
+@@ -817,17 +817,18 @@
+ 				    canon = name;
+ 				}
+ 			    }
+-
+-			  break;
++			  status = NSS_STATUS_SUCCESS;
++			}
++		      else
++			{
++			  /* We can have different states for AF_INET and
++			     AF_INET6.  Try to find a useful one for both.  */
++			  if (inet6_status == NSS_STATUS_TRYAGAIN)
++			    status = NSS_STATUS_TRYAGAIN;
++			  else if (status == NSS_STATUS_UNAVAIL
++				   && inet6_status != NSS_STATUS_UNAVAIL)
++			    status = inet6_status;
+ 			}
+-
+-		      /* We can have different states for AF_INET and
+-			 AF_INET6.  Try to find a useful one for both.  */
+-		      if (inet6_status == NSS_STATUS_TRYAGAIN)
+-			status = NSS_STATUS_TRYAGAIN;
+-		      else if (status == NSS_STATUS_UNAVAIL
+-			       && inet6_status != NSS_STATUS_UNAVAIL)
+-			status = inet6_status;
+ 		    }
+ 		  else
+ 		    status = NSS_STATUS_UNAVAIL;

Modified: glibc-package/branches/eglibc-2.11/debian/patches/series
===================================================================
--- glibc-package/branches/eglibc-2.11/debian/patches/series	2010-05-24 16:45:48 UTC (rev 4282)
+++ glibc-package/branches/eglibc-2.11/debian/patches/series	2010-05-24 16:51:52 UTC (rev 4283)
@@ -228,3 +228,4 @@
 any/cvs-remove.diff
 any/submitted-nptl-invalid-td.patch
 any/local-gai-rfc1918-scope-global.patch
+any/cvs-getaddrinfo.diff


Reply to: