summaryrefslogtreecommitdiffstats
path: root/src/providers/ipa
diff options
context:
space:
mode:
authorJakub Hrozek <jhrozek@redhat.com>2015-05-25 10:21:05 +0200
committerJakub Hrozek <jhrozek@redhat.com>2015-06-02 21:22:08 +0200
commitfbba3e56fa91e72f58b27a8b9fa8ccffd7ab5be0 (patch)
treefffe30d4ae803c4ba653780a393c3e1578ae5327 /src/providers/ipa
parent10d66d2ec03d0864cb7a006ef589a4bbbc1f48dc (diff)
downloadsssd-fbba3e56fa91e72f58b27a8b9fa8ccffd7ab5be0.tar.gz
sssd-fbba3e56fa91e72f58b27a8b9fa8ccffd7ab5be0.tar.xz
sssd-fbba3e56fa91e72f58b27a8b9fa8ccffd7ab5be0.zip
Skip enumeration requests in IPA and AD providers as well
Checking the enum request in the underlying LDAP provider to skip it might be too late as the richer IPA or AD providers depend on having a useful result when the sdap request finishes. Move the enumeration check earlier instead and allow directly in the IPA or AD handler. Related: https://fedorahosted.org/sssd/ticket/2659 Reviewed-by: Sumit Bose <sbose@redhat.com> (cherry picked from commit 40bc389bc79bc41429b5a92d5ce75955f8eefaf5)
Diffstat (limited to 'src/providers/ipa')
-rw-r--r--src/providers/ipa/ipa_id.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/providers/ipa/ipa_id.c b/src/providers/ipa/ipa_id.c
index e3a7fffc3..1dcb82d66 100644
--- a/src/providers/ipa/ipa_id.c
+++ b/src/providers/ipa/ipa_id.c
@@ -89,6 +89,11 @@ void ipa_account_info_handler(struct be_req *breq)
ar = talloc_get_type(be_req_get_data(breq), struct be_acct_req);
+ if (sdap_is_enum_request(ar)) {
+ DEBUG(SSSDBG_TRACE_LIBS, "Skipping enumeration on demand\n");
+ return sdap_handler_done(breq, DP_ERR_OK, EOK, "Success");
+ }
+
if (strcasecmp(ar->domain, be_ctx->domain->name) != 0) {
/* if domain names do not match, this is a subdomain case
* subdomain lookups are handled differently on the server