summaryrefslogtreecommitdiff
path: root/src/providers/ldap/ldap_common.c
diff options
context:
space:
mode:
authorJakub Hrozek <jhrozek@redhat.com>2013-08-24 14:43:57 +0200
committerJakub Hrozek <jhrozek@redhat.com>2013-09-18 19:06:35 +0200
commit21f749c9300a1a51f3eb83d7f1483ec2fe15b3cc (patch)
treea32d18426c74257badefa0bb62ff4bc2983d0806 /src/providers/ldap/ldap_common.c
parent31ad608192c24eb56cf7a8294f6bfc080893193c (diff)
downloadsssd-21f749c9300a1a51f3eb83d7f1483ec2fe15b3cc.tar.gz
sssd-21f749c9300a1a51f3eb83d7f1483ec2fe15b3cc.tar.bz2
sssd-21f749c9300a1a51f3eb83d7f1483ec2fe15b3cc.zip
LDAP: sdap_id_setup_tasks accepts a custom enum request
AD provider will override the default with its own.
Diffstat (limited to 'src/providers/ldap/ldap_common.c')
-rw-r--r--src/providers/ldap/ldap_common.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/providers/ldap/ldap_common.c b/src/providers/ldap/ldap_common.c
index 0df5afe8..b668a48e 100644
--- a/src/providers/ldap/ldap_common.c
+++ b/src/providers/ldap/ldap_common.c
@@ -938,12 +938,16 @@ void sdap_mark_offline(struct sdap_id_ctx *ctx)
int ldap_id_setup_tasks(struct sdap_id_ctx *ctx)
{
- return sdap_id_setup_tasks(ctx, ctx->conn, ctx->opts->sdom);
+ return sdap_id_setup_tasks(ctx, ctx->conn, ctx->opts->sdom,
+ ldap_enumeration_send,
+ ldap_enumeration_recv);
}
int sdap_id_setup_tasks(struct sdap_id_ctx *ctx,
struct sdap_id_conn_ctx *conn,
- struct sdap_domain *sdom)
+ struct sdap_domain *sdom,
+ be_ptask_send_t send_fn,
+ be_ptask_recv_t recv_fn)
{
struct timeval tv;
int ret = EOK;
@@ -952,7 +956,7 @@ int sdap_id_setup_tasks(struct sdap_id_ctx *ctx,
/* set up enumeration task */
if (sdom->dom->enumerate) {
DEBUG(SSSDBG_TRACE_FUNC, ("Setting up enumeration for %s\n", sdom->dom->name));
- ret = ldap_setup_enumeration(ctx, conn, sdom);
+ ret = ldap_setup_enumeration(ctx, conn, sdom, send_fn, recv_fn);
} else {
/* the enumeration task, runs the cleanup process by itself,
* but if enumeration is not running we need to schedule it */