From 6895f3af180f96656497af1c8c0c89e1ad3aa791 Mon Sep 17 00:00:00 2001 From: Frank Brehm Date: Thu, 7 Jan 2021 17:35:39 +0100 Subject: [PATCH] Don't migrating Samba Computer entries --- lib/ldap_migration/__init__.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/lib/ldap_migration/__init__.py b/lib/ldap_migration/__init__.py index 7f5ef4f..8f948b4 100644 --- a/lib/ldap_migration/__init__.py +++ b/lib/ldap_migration/__init__.py @@ -45,7 +45,7 @@ from fb_tools.collections import CIStringSet, CIDict from .config import LDAPMigrationConfiguration -__version__ = '0.9.9' +__version__ = '0.9.10' LOG = logging.getLogger(__name__) CFG_BASENAME = 'ldap-migration.ini' @@ -173,6 +173,8 @@ class LDAPMigrationApplication(BaseApplication): re_token_split = re.compile(r'^\s*([a-z0-9]+)\s*=\s*(\S(?:.*\S)?)\s*$', re.IGNORECASE) re_plus_in_cn = re.compile(r'(?P\S)(?:\s+\+\s+|\s+\+|\+\s+)\s*(?P\S)') + rev_dn_samba_computers = 'o=isp:o=pixelpark:ou=Applications:ou=Unix NSS:ou=SambaComputers' + tz = get_localzone() # ------------------------------------------------------------------------- @@ -1571,6 +1573,13 @@ class LDAPMigrationApplication(BaseApplication): tgt_dn = self.mangle_dn(src_dn) rev_dn = self.get_reverse_dn(tgt_dn) + + if (rev_dn.lower().startswith(self.rev_dn_samba_computers.lower()) and + tgt_dn.lower().startswith('uid=')): + LOG.info("Entry {!r} is a Samba Computer entry and will not be migrated.".format( + src_dn)) + return False + LOG.debug("Migrating source DN {sdn!r} -> {tdn!r}.".format( sdn=src_dn, tdn=tgt_dn)) -- 2.39.5