Blame SOURCES/0013-Do-not-run-trust-upgrade-code-if-master-lacks-Samba-bindings_1854038_rhbz#1773516.patch

c82ed3
From 18540386230e295087296e58761ced2b781ae4e3 Mon Sep 17 00:00:00 2001
c82ed3
From: Alexander Bokovoy <abokovoy@redhat.com>
c82ed3
Date: Nov 21 2019 09:44:37 +0000
c82ed3
Subject: Do not run trust upgrade code if master lacks Samba bindings
c82ed3
c82ed3
c82ed3
If a replica has no Samba bindings but there are trust agreements
c82ed3
configured on some trust controller, skip trust upgrade code on this
c82ed3
replica.
c82ed3
c82ed3
Resolves: https://pagure.io/freeipa/issue/8001
c82ed3
Signed-off-by: Alexander Bokovoy <abokovoy@redhat.com>
c82ed3
Reviewed-By: Thomas Woerner <twoerner@redhat.com>
c82ed3
c82ed3
---
c82ed3
c82ed3
diff --git a/ipaserver/install/plugins/adtrust.py b/ipaserver/install/plugins/adtrust.py
c82ed3
index b7bb53f..2a9b4f0 100644
c82ed3
--- a/ipaserver/install/plugins/adtrust.py
c82ed3
+++ b/ipaserver/install/plugins/adtrust.py
c82ed3
@@ -24,6 +24,8 @@ except ImportError:
c82ed3
     def ndr_unpack(x):
c82ed3
         raise NotImplementedError
c82ed3
 
c82ed3
+    drsblobs = None
c82ed3
+
c82ed3
 logger = logging.getLogger(__name__)
c82ed3
 
c82ed3
 register = Registry()
c82ed3
@@ -633,6 +635,10 @@ class update_tdo_to_new_layout(Updater):
c82ed3
             logger.debug('AD Trusts are not enabled on this server')
c82ed3
             return False, []
c82ed3
 
c82ed3
+        # If we have no Samba bindings, this master is not a trust controller
c82ed3
+        if drsblobs is None:
c82ed3
+            return False, []
c82ed3
+
c82ed3
         ldap = self.api.Backend.ldap2
c82ed3
         gidNumber = get_gidNumber(ldap, self.api.env)
c82ed3
         if gidNumber is None:
c82ed3