summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/providers/ldap/sdap_async.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/src/providers/ldap/sdap_async.c b/src/providers/ldap/sdap_async.c
index fb5c8902..d505772c 100644
--- a/src/providers/ldap/sdap_async.c
+++ b/src/providers/ldap/sdap_async.c
@@ -1288,10 +1288,15 @@ static void sdap_get_generic_ext_done(struct sdap_op *op,
sss_ldap_err2string(result), result,
errmsg ? errmsg : "no errmsg set"));
- if (result != LDAP_SUCCESS && result != LDAP_NO_SUCH_OBJECT) {
- DEBUG(2, ("Unexpected result from ldap: %s(%d), %s\n",
- sss_ldap_err2string(result), result,
- errmsg ? errmsg : "no errmsg set"));
+ if (result == LDAP_SIZELIMIT_EXCEEDED) {
+ /* Try to return what we've got */
+ DEBUG(SSSDBG_MINOR_FAILURE,
+ ("LDAP sizelimit was exceeded, returning incomplete data\n"));
+ } else if (result != LDAP_SUCCESS && result != LDAP_NO_SUCH_OBJECT) {
+ DEBUG(SSSDBG_OP_FAILURE,
+ ("Unexpected result from ldap: %s(%d), %s\n",
+ sss_ldap_err2string(result), result,
+ errmsg ? errmsg : "no errmsg set"));
ldap_memfree(errmsg);
tevent_req_error(req, EIO);
return;