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