s4/torture/drs/python: py2/py3 compat changes for samba4.drs.repl_rodc
authorNoel Power <noel.power@suse.com>
Fri, 15 Jun 2018 16:55:46 +0000 (17:55 +0100)
committerAndrew Bartlett <abartlet@samba.org>
Sat, 15 Sep 2018 13:18:30 +0000 (15:18 +0200)
Signed-off-by: Noel Power <noel.power@suse.com>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
python/samba/join.py
source4/torture/drs/python/repl_rodc.py

index 66a5641a08b614393080a888b36d3225e20a9929..38a15455f977f41fd1b0a3dca12551380101697a 100644 (file)
@@ -50,6 +50,7 @@ import re
 import os
 import tempfile
 from samba.compat import text_type
+from samba.compat import get_string
 
 
 class DCJoinException(Exception):
@@ -398,7 +399,7 @@ class DCJoinContext(object):
            so only used for RODC join'''
         res = ctx.samdb.search(base="", scope=ldb.SCOPE_BASE, attrs=["tokenGroups"])
         binsid = res[0]["tokenGroups"][0]
-        return ctx.samdb.schema_format_value("objectSID", binsid)
+        return get_string(ctx.samdb.schema_format_value("objectSID", binsid))
 
     def dn_exists(ctx, dn):
         '''check if a DN exists'''
index 727addb397aee66c602d5600ba3c097c23d8da38..15587f40ff63937b632eae2cbe9f7524a660c927 100644 (file)
@@ -61,14 +61,14 @@ def drs_get_rodc_partial_attribute_set(samdb, samdb1, exceptions=[]):
                               "searchFlags"])
 
     for r in res:
-        ldap_display_name = r["lDAPDisplayName"][0]
+        ldap_display_name = str(r["lDAPDisplayName"][0])
         if "systemFlags" in r:
-            system_flags      = r["systemFlags"][0]
+            system_flags      = str(r["systemFlags"][0])
             if (int(system_flags) & (samba.dsdb.DS_FLAG_ATTR_NOT_REPLICATED |
                                      samba.dsdb.DS_FLAG_ATTR_IS_CONSTRUCTED)):
                 continue
         if "searchFlags" in r:
-            search_flags = r["searchFlags"][0]
+            search_flags = str(r["searchFlags"][0])
             if (int(search_flags) & samba.dsdb.SEARCH_FLAG_RODC_ATTRIBUTE):
                 continue
         try:
@@ -624,7 +624,8 @@ class DrsRodcTestCase(drs_base.DrsBaseTestCase):
         packed_attrs = []
         unpacked_attrs = []
         for attribute in revealed_users:
-            dsdb_dn = dsdb_Dn(self.ldb_dc1, attribute.decode('utf8'))
+            attribute = attribute.decode('utf8')
+            dsdb_dn = dsdb_Dn(self.ldb_dc1, attribute)
             metadata = ndr_unpack(drsblobs.replPropertyMetaData1, dsdb_dn.get_bytes())
             if user_dn in attribute:
                 unpacked_attrs.append(metadata)