diff options
author | Jakub Hrozek <jhrozek@redhat.com> | 2012-03-07 17:08:52 +0100 |
---|---|---|
committer | Jan Zeleny <jzeleny@redhat.com> | 2012-03-08 10:58:15 +0100 |
commit | 606d2d03833903f00d40f9810d4dccd04a752e76 (patch) | |
tree | 41fc8ff0f0fb69aeea5b2cd425d515e219c5f259 /src/providers/ldap | |
parent | 9729b24935f9b717234728b2d2cfb4ca49df307b (diff) | |
download | sssd-606d2d03833903f00d40f9810d4dccd04a752e76.tar.gz sssd-606d2d03833903f00d40f9810d4dccd04a752e76.tar.bz2 sssd-606d2d03833903f00d40f9810d4dccd04a752e76.zip |
Detect cycle in the fail over on subsequent resolve requests only
Diffstat (limited to 'src/providers/ldap')
-rw-r--r-- | src/providers/ldap/ldap_auth.c | 3 | ||||
-rw-r--r-- | src/providers/ldap/sdap_async_connection.c | 6 |
2 files changed, 6 insertions, 3 deletions
diff --git a/src/providers/ldap/ldap_auth.c b/src/providers/ldap/ldap_auth.c index 8b6173e1..734249ce 100644 --- a/src/providers/ldap/ldap_auth.c +++ b/src/providers/ldap/ldap_auth.c @@ -517,7 +517,8 @@ static struct tevent_req *auth_get_server(struct tevent_req *req) next_req = be_resolve_server_send(state, state->ev, state->ctx->be, - state->sdap_service->name); + state->sdap_service->name, + state->srv == NULL ? true : false); if (!next_req) { DEBUG(1, ("be_resolve_server_send failed.\n")); return NULL; diff --git a/src/providers/ldap/sdap_async_connection.c b/src/providers/ldap/sdap_async_connection.c index 22aa4f91..2b7f8c93 100644 --- a/src/providers/ldap/sdap_async_connection.c +++ b/src/providers/ldap/sdap_async_connection.c @@ -884,7 +884,8 @@ static struct tevent_req *sdap_kinit_next_kdc(struct tevent_req *req) next_req = be_resolve_server_send(state, state->ev, state->be, - state->krb_service_name); + state->krb_service_name, + state->kdc_srv == NULL ? true : false); if (next_req == NULL) { DEBUG(1, ("be_resolve_server_send failed.\n")); return NULL; @@ -1215,7 +1216,8 @@ static int sdap_cli_resolve_next(struct tevent_req *req) /* NOTE: this call may cause service->uri to be refreshed * with a new valid server. Do not use service->uri before */ subreq = be_resolve_server_send(state, state->ev, - state->be, state->service->name); + state->be, state->service->name, + state->srv == NULL ? true : false); if (!subreq) { return ENOMEM; } |