diff options
author | Pavel Březina <pbrezina@redhat.com> | 2012-12-14 18:58:40 +0100 |
---|---|---|
committer | Jakub Hrozek <jhrozek@redhat.com> | 2012-12-15 19:08:36 +0100 |
commit | 91705fd603b4740b81740c6b9333fe09fd8a7e48 (patch) | |
tree | 915968f162d6def101088336b3a7cf77b81fe9e4 /src/providers/ldap | |
parent | 23669fdf7afd1f0b427f98eb20a760101fb80300 (diff) | |
download | sssd-91705fd603b4740b81740c6b9333fe09fd8a7e48.tar.gz sssd-91705fd603b4740b81740c6b9333fe09fd8a7e48.tar.xz sssd-91705fd603b4740b81740c6b9333fe09fd8a7e48.zip |
let ldap_chpass_uri failover work when using same hostname
https://fedorahosted.org/sssd/ticket/1699
We want to continue with the next server on all errors, not only
on ETIMEDOUT.
This particullar ticket was dealing with ECONNREFUSED.
Diffstat (limited to 'src/providers/ldap')
-rw-r--r-- | src/providers/ldap/ldap_auth.c | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/src/providers/ldap/ldap_auth.c b/src/providers/ldap/ldap_auth.c index b78fdb8ed..b0dd30ce6 100644 --- a/src/providers/ldap/ldap_auth.c +++ b/src/providers/ldap/ldap_auth.c @@ -609,14 +609,10 @@ static void auth_connect_done(struct tevent_req *subreq) state->sdap_service->name, state->srv, PORT_NOT_WORKING); } - if (ret == ETIMEDOUT) { - if (auth_get_server(req) == NULL) { - tevent_req_error(req, ENOMEM); - } - return; - } - tevent_req_error(req, ret); + if (auth_get_server(req) == NULL) { + tevent_req_error(req, ENOMEM); + } return; } else if (state->srv) { be_fo_set_port_status(state->ctx->be, state->sdap_service->name, @@ -659,14 +655,11 @@ static void auth_bind_user_done(struct tevent_req *subreq) state->pw_expire_data = ppolicy; } talloc_zfree(subreq); - if (ret == ETIMEDOUT) { + if (ret != EOK) { if (auth_get_server(req) == NULL) { tevent_req_error(req, ENOMEM); } return; - } else if (ret != EOK) { - tevent_req_error(req, ret); - return; } tevent_req_done(req); |