From 2d0bdb5ce92ea87f7228d6bb8918ec2fcf414af7 Mon Sep 17 00:00:00 2001 From: Joseph Sutton Date: Thu, 28 Sep 2023 16:09:06 +1300 Subject: [PATCH] tests/krb5: Have set_pac_sids() accept lone RIDs as well as full SIDs Signed-off-by: Joseph Sutton Reviewed-by: Andrew Bartlett --- python/samba/tests/krb5/kdc_base_test.py | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/python/samba/tests/krb5/kdc_base_test.py b/python/samba/tests/krb5/kdc_base_test.py index cac4c747de3..ce8ff39096d 100644 --- a/python/samba/tests/krb5/kdc_base_test.py +++ b/python/samba/tests/krb5/kdc_base_test.py @@ -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: -- 2.47.3