diff options
author | Simo Sorce <ssorce@redhat.com> | 2009-11-10 16:39:17 -0500 |
---|---|---|
committer | Stephen Gallagher <sgallagh@redhat.com> | 2009-11-12 11:00:49 -0500 |
commit | b5ac07244923be884255dfa8acc9c8a3da7d6ac1 (patch) | |
tree | 6f00de6a4888565d156bb00c679e2ea58a1f62dc /server | |
parent | 6a56f2477ae36f899515a3dc86ebf35adb992d5d (diff) | |
download | sssd-b5ac07244923be884255dfa8acc9c8a3da7d6ac1.tar.gz sssd-b5ac07244923be884255dfa8acc9c8a3da7d6ac1.tar.bz2 sssd-b5ac07244923be884255dfa8acc9c8a3da7d6ac1.zip |
Try to fix offline logins
Diffstat (limited to 'server')
-rw-r--r-- | server/providers/ldap/ldap_id.c | 18 |
1 files changed, 6 insertions, 12 deletions
diff --git a/server/providers/ldap/ldap_id.c b/server/providers/ldap/ldap_id.c index 124ee7d8..52391c28 100644 --- a/server/providers/ldap/ldap_id.c +++ b/server/providers/ldap/ldap_id.c @@ -709,10 +709,8 @@ static void sdap_account_info_users_done(struct tevent_req *req) dp_err = DP_ERR_FATAL; error = "Enum Users Failed"; - if (ret == ETIMEDOUT) { - dp_err = DP_ERR_TIMEOUT; - } - if (ret == ETIMEDOUT || ret == EFAULT) { + if (ret == ETIMEDOUT || ret == EFAULT || ret == EIO) { + dp_err = DP_ERR_OFFLINE; ctx = talloc_get_type(breq->be_ctx->bet_info[BET_ID].pvt_bet_data, struct sdap_id_ctx); sdap_mark_offline(ctx); @@ -737,10 +735,8 @@ static void sdap_account_info_groups_done(struct tevent_req *req) dp_err = DP_ERR_FATAL; error = "Enum Groups Failed"; - if (ret == ETIMEDOUT) { - dp_err = DP_ERR_TIMEOUT; - } - if (ret == ETIMEDOUT || ret == EFAULT) { + if (ret == ETIMEDOUT || ret == EFAULT || ret == EIO) { + dp_err = DP_ERR_OFFLINE; ctx = talloc_get_type(breq->be_ctx->bet_info[BET_ID].pvt_bet_data, struct sdap_id_ctx); sdap_mark_offline(ctx); @@ -765,10 +761,8 @@ static void sdap_account_info_initgr_done(struct tevent_req *req) dp_err = DP_ERR_FATAL; error = "Init Groups Failed"; - if (ret == ETIMEDOUT) { - dp_err = DP_ERR_TIMEOUT; - } - if (ret == ETIMEDOUT || ret == EFAULT) { + if (ret == ETIMEDOUT || ret == EFAULT || ret == EIO) { + dp_err = DP_ERR_OFFLINE; ctx = talloc_get_type(breq->be_ctx->bet_info[BET_ID].pvt_bet_data, struct sdap_id_ctx); sdap_mark_offline(ctx); |