Commit 24746dc6 authored by Jeff Trawick's avatar Jeff Trawick
Browse files

mod_ldap: Fix the search limit parameter to ldap_search_ext_s()

for SDKs that define LDAP_NO_LIMIT to something other than -1.

Submitted by: David Jones <oscaremma gmail.com>
Reviewed by:  trawick



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@509237 13f79535-47bb-0310-9956-ffa450edef68
parent eba44cd8
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -2,6 +2,10 @@
Changes with Apache 2.3.0
  [Remove entries to the current 2.0 and 2.2 section below, when backported]
  *) mod_ldap: Fix the search limit parameter to ldap_search_ext_s()
     for SDKs that define LDAP_NO_LIMIT to something other than -1.
     [David Jones <oscaremma gmail.com>]
  *) mod_cache: Use the same cache key throughout the whole request processing
     to handle escaped URLs correctly.  PR 41475. [Ruediger Pluem]
+6 −3
Original line number Diff line number Diff line
@@ -52,6 +52,9 @@
#define LDAP_CA_TYPE_BASE64             2
#define LDAP_CA_TYPE_CERT7_DB           3

#ifndef LDAP_NO_LIMIT
#define LDAP_NO_LIMIT -1
#endif

module AP_MODULE_DECLARE_DATA ldap_module;

@@ -657,7 +660,7 @@ start_over:
    /* search for reqdn */
    if ((result = ldap_search_ext_s(ldc->ldap, (char *)reqdn, LDAP_SCOPE_BASE,
                                    "(objectclass=*)", NULL, 1,
                                    NULL, NULL, NULL, -1, &res))
                                    NULL, NULL, NULL, LDAP_NO_LIMIT, &res))
            == LDAP_SERVER_DOWN)
    {
        ldc->reason = "DN Comparison ldap_search_ext_s() "
@@ -935,7 +938,7 @@ start_over:
    if ((result = ldap_search_ext_s(ldc->ldap,
                                    (char *)basedn, scope,
                                    (char *)filter, attrs, 0,
                                    NULL, NULL, NULL, -1, &res))
                                    NULL, NULL, NULL, LDAP_NO_LIMIT, &res))
            == LDAP_SERVER_DOWN)
    {
        ldc->reason = "ldap_search_ext_s() for user failed with server down";
@@ -1175,7 +1178,7 @@ start_over:
    if ((result = ldap_search_ext_s(ldc->ldap,
                                    (char *)basedn, scope,
                                    (char *)filter, attrs, 0,
                                    NULL, NULL, NULL, -1, &res))
                                    NULL, NULL, NULL, LDAP_NO_LIMIT, &res))
            == LDAP_SERVER_DOWN)
    {
        ldc->reason = "ldap_search_ext_s() for user failed with server down";