Blob Blame History Raw
From 4b9db04661f30625fb00bb22dc7ff84e77d2efb2 Mon Sep 17 00:00:00 2001
From: Jakub Hrozek <jhrozek@redhat.com>
Date: Wed, 2 Sep 2015 13:42:06 +0200
Subject: [PATCH 77/87] AD: Only ignore errors from SDAP lookups if there's
 another connection to fallback to
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Required for:
https://fedorahosted.org/sssd/ticket/2637

The AD lookup code honors the ignore_mark_offline flag in the sense that
if it's set, the sdap return code is not reported to the upper layer,
but EOK is returned as request status and the sdap return code is
returned separately.

This patch modifies the behaviour further to only apply if there is
another connection to fall back to.

Reviewed-by: Pavel Březina <pbrezina@redhat.com>
(cherry picked from commit 7fc8692d49cdaa0368072f196433c07b475da679)
---
 src/providers/ad/ad_id.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/providers/ad/ad_id.c b/src/providers/ad/ad_id.c
index 7a0c6eccd2d2f0d4f8a545a9d4873a9447179a00..4f327f823173eb113153a556322dae4cc4b42f3e 100644
--- a/src/providers/ad/ad_id.c
+++ b/src/providers/ad/ad_id.c
@@ -146,6 +146,7 @@ ad_handle_acct_info_done(struct tevent_req *subreq)
 
     ret = sdap_handle_acct_req_recv(subreq, &dp_error, &err, &sdap_err);
     if (dp_error == DP_ERR_OFFLINE
+        && state->conn[state->cindex+1] != NULL
         && state->conn[state->cindex]->ignore_mark_offline) {
          /* This is a special case: GC does not work.
           *  We need to Fall back to ldap
-- 
2.4.3