]> git.ipfire.org Git - thirdparty/apache/httpd.git/commitdiff
re-try LDAP connections in a few authz paths.
authorEric Covener <covener@apache.org>
Mon, 24 Jun 2013 20:40:05 +0000 (20:40 +0000)
committerEric Covener <covener@apache.org>
Mon, 24 Jun 2013 20:40:05 +0000 (20:40 +0000)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1496207 13f79535-47bb-0310-9956-ffa450edef68

CHANGES
modules/ldap/util_ldap.c

diff --git a/CHANGES b/CHANGES
index 3c814e6a43a0c6622a2f6d948f93247e7056166c..0aacf155c55e06aaf3df58be431ac75bf98fe460 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,6 +1,10 @@
                                                          -*- coding: utf-8 -*-
 Changes with Apache 2.5.0
 
+  *) mod_ldap: Retry transient LDAP connection errors when they occur 
+     during the authorization stage. 
+     [Eric Covener]
+
   *) mod_ldap: Don't keep retrying if a new LDAP connection times out.
      [Eric Covener]
 
index 9326add09a0ac40b292afb7444e086636a5f2de6..da0db6ea14250d7008ae072387da3adf847b6c48 100644 (file)
@@ -1113,7 +1113,11 @@ start_over:
     }
 
     if (LDAP_SUCCESS != (result = uldap_connection_open(r, ldc))) {
-        /* connect failed */
+        if (AP_LDAP_IS_SERVER_DOWN(result)) { 
+            failures++;
+            goto start_over;
+        }
+        /* something other than 'server down' */
         return result;
     }
 
@@ -1230,7 +1234,11 @@ start_over:
 
 
     if (LDAP_SUCCESS != (result = uldap_connection_open(r, ldc))) {
-        /* connect failed */
+        failures++;
+        if (AP_LDAP_IS_SERVER_DOWN(result)) { 
+            goto start_over;
+        }
+        /* something other than 'server down' */
         return res;
     }