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:07:44 +0100 |
commit | da7ed242898bafe5d84d4dd2b4253d20e4105516 (patch) | |
tree | 28e2485ff47cbf77d849e823fb756888ee364bae /src/providers/ldap | |
parent | 927c089ba7799a0d006769bf3a09f769966b068b (diff) | |
download | sssd-da7ed242898bafe5d84d4dd2b4253d20e4105516.tar.gz sssd-da7ed242898bafe5d84d4dd2b4253d20e4105516.tar.bz2 sssd-da7ed242898bafe5d84d4dd2b4253d20e4105516.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 b78fdb8e..b0dd30ce 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); |