summaryrefslogtreecommitdiffstats
path: root/src/providers/ldap/ldap_auth.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/providers/ldap/ldap_auth.c')
-rw-r--r--src/providers/ldap/ldap_auth.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/providers/ldap/ldap_auth.c b/src/providers/ldap/ldap_auth.c
index 6ee570bba..817179426 100644
--- a/src/providers/ldap/ldap_auth.c
+++ b/src/providers/ldap/ldap_auth.c
@@ -762,6 +762,18 @@ static void auth_connect_done(struct tevent_req *subreq)
state->srv, PORT_WORKING);
}
+ /* In case the ID provider is set to proxy, this might be the first
+ * LDAP operation at all, so we need to set the connection status
+ */
+ if (state->sh->connected == false) {
+ ret = sdap_set_connected(state->sh, state->ev);
+ if (ret) {
+ DEBUG(SSSDBG_OP_FAILURE, "Cannot set connected status\n");
+ tevent_req_error(req, ret);
+ return;
+ }
+ }
+
ret = get_user_dn(state, state->ctx->be->domain,
state->ctx->opts, state->username, &state->dn,
&state->pw_expire_type, &state->pw_expire_data);