diff options
-rw-r--r-- | src/providers/ldap/sdap_async.c | 13 |
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; |