]> granicus.if.org Git - apache/commitdiff
retry during a timeout in uldap_cache_checkuserid(), like other paths that check
authorEric Covener <covener@apache.org>
Sun, 4 Aug 2013 01:02:57 +0000 (01:02 +0000)
committerEric Covener <covener@apache.org>
Sun, 4 Aug 2013 01:02:57 +0000 (01:02 +0000)
server down and TIMEOUT together.

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1510084 13f79535-47bb-0310-9956-ffa450edef68

modules/ldap/util_ldap.c

index 3b4aa29e135039ae9b8563e6fbf67527349b03c2..324242f563cdb3a8a3dc19975b4b91d5aa9f4ec1 100644 (file)
@@ -1728,6 +1728,14 @@ start_over:
         goto start_over;
     }
 
+    if (result == LDAP_TIMEOUT) {
+        ldc->reason = "ldap_search_ext_s() for user failed with timeout";
+        uldap_connection_unbind(ldc);
+        failures++;
+        goto start_over;
+    }
+
+
     /* if there is an error (including LDAP_NO_SUCH_OBJECT) return now */
     if (result != LDAP_SUCCESS) {
         ldc->reason = "ldap_search_ext_s() for user failed";