]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
tests/krb5: Have set_pac_sids() accept lone RIDs as well as full SIDs
authorJoseph Sutton <josephsutton@catalyst.net.nz>
Thu, 28 Sep 2023 03:09:06 +0000 (16:09 +1300)
committerAndrew Bartlett <abartlet@samba.org>
Thu, 28 Sep 2023 03:33:38 +0000 (03:33 +0000)
Signed-off-by: Joseph Sutton <josephsutton@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
python/samba/tests/krb5/kdc_base_test.py

index cac4c747de338becc95a425971cb4f8af6d921fe..ce8ff39096d767fa0585e2fd452aa1508c8f0a5c 100644 (file)
@@ -1567,7 +1567,10 @@ class KDCBaseTest(TestCaseInTempDir, RawKerberosTest):
         # location in the PAC.
         for sid, sid_type, attrs in new_sids:
             if sid_type is self.SidType.BASE_SID:
-                domain, rid = sid.rsplit('-', 1)
+                if isinstance(sid, int):
+                    domain, rid = domain_sid, sid
+                else:
+                    domain, rid = sid.rsplit('-', 1)
                 self.assertEqual(domain_sid, domain,
                                  f'base SID {sid} must be in our domain')
 
@@ -1583,7 +1586,10 @@ class KDCBaseTest(TestCaseInTempDir, RawKerberosTest):
 
                 extra_sids.append(extra_sid)
             elif sid_type is self.SidType.RESOURCE_SID:
-                domain, rid = sid.rsplit('-', 1)
+                if isinstance(sid, int):
+                    domain, rid = domain_sid, sid
+                else:
+                    domain, rid = sid.rsplit('-', 1)
                 if resource_domain is None:
                     resource_domain = domain
                 else:
@@ -1602,7 +1608,10 @@ class KDCBaseTest(TestCaseInTempDir, RawKerberosTest):
                                   f'{sid}')
                 self.assertIsNone(attrs, 'cannot specify primary GID attrs')
 
-                domain, primary_gid = sid.rsplit('-', 1)
+                if isinstance(sid, int):
+                    domain, primary_gid = domain_sid, sid
+                else:
+                    domain, primary_gid = sid.rsplit('-', 1)
                 self.assertEqual(domain_sid, domain,
                                  f'primary GID {sid} must be in our domain')
             else: