Blame SOURCES/0011-ipa-add-failover-to-subdomain-override-lookups.patch

8aada9
From df632eec450791559a4a7644f241964397c10ff9 Mon Sep 17 00:00:00 2001
8aada9
From: Sumit Bose <sbose@redhat.com>
8aada9
Date: Fri, 5 Jun 2020 13:59:25 +0200
8aada9
Subject: [PATCH] ipa: add failover to subdomain override lookups
8aada9
8aada9
In the ipa_subdomain_account request failover handling was missing.
8aada9
8aada9
Related to https://github.com/SSSD/sssd/issues/5075
8aada9
      (was https://pagure.io/SSSD/sssd/issue/4114)
8aada9
8aada9
Reviewed-by: Pawel Polawski <ppolawsk@redhat.com>
8aada9
---
8aada9
 src/providers/ipa/ipa_subdomains_id.c | 14 ++++++++++++++
8aada9
 1 file changed, 14 insertions(+)
8aada9
8aada9
diff --git a/src/providers/ipa/ipa_subdomains_id.c b/src/providers/ipa/ipa_subdomains_id.c
8aada9
index 1224c7b73..36f32fae8 100644
8aada9
--- a/src/providers/ipa/ipa_subdomains_id.c
8aada9
+++ b/src/providers/ipa/ipa_subdomains_id.c
8aada9
@@ -208,6 +208,20 @@ static void ipa_subdomain_account_got_override(struct tevent_req *subreq)
8aada9
                                    &state->override_attrs);
8aada9
     talloc_zfree(subreq);
8aada9
     if (ret != EOK) {
8aada9
+        ret = sdap_id_op_done(state->op, ret, &dp_error);
8aada9
+
8aada9
+        if (dp_error == DP_ERR_OK && ret != EOK) {
8aada9
+            /* retry */
8aada9
+            subreq = sdap_id_op_connect_send(state->op, state, &ret;;
8aada9
+            if (subreq == NULL) {
8aada9
+                DEBUG(SSSDBG_OP_FAILURE, "sdap_id_op_connect_send failed.\n");
8aada9
+                goto fail;
8aada9
+            }
8aada9
+            tevent_req_set_callback(subreq, ipa_subdomain_account_connected,
8aada9
+                                    req);
8aada9
+            return;
8aada9
+        }
8aada9
+
8aada9
         DEBUG(SSSDBG_OP_FAILURE, "IPA override lookup failed: %d\n", ret);
8aada9
         goto fail;
8aada9
     }
8aada9
-- 
8aada9
2.21.3
8aada9