]> git.ipfire.org Git - people/ms/ipfire-3.x.git/blobdiff - nss_ldap/patches/nss_ldap-265-erange.patch
Move all packages to root.
[people/ms/ipfire-3.x.git] / nss_ldap / patches / nss_ldap-265-erange.patch
diff --git a/nss_ldap/patches/nss_ldap-265-erange.patch b/nss_ldap/patches/nss_ldap-265-erange.patch
new file mode 100644 (file)
index 0000000..0bdfe5a
--- /dev/null
@@ -0,0 +1,17 @@
+If we were supposed to set ERANGE, do so again, in case do_close() or
+_nss_ldap_leave() overwrote errno with some other value.  Upstream #421.
+
+diff -up nss_ldap-265/ldap-nss.ce nss_ldap-265/ldap-nss.c
+--- nss_ldap-265/ldap-nss.ce   2010-07-08 16:17:07.000000000 -0400
++++ nss_ldap-265/ldap-nss.c    2010-07-08 16:17:03.000000000 -0400
+@@ -3572,6 +3572,10 @@ _nss_ldap_getbyname (ldap_args_t * args,
+   debug ("<== _nss_ldap_getbyname");
++  /* at least for the cases where we know we have to return ERANGE */
++  if (stat == NSS_TRYAGAIN)
++    do_map_errno(stat, errnop);
++
+   return stat;
+ }