diff options
author | Ralph Boehme <slow@samba.org> | 2019-12-17 15:32:17 +0100 |
---|---|---|
committer | Ralph Boehme <slow@samba.org> | 2019-12-20 11:41:42 +0000 |
commit | 9807d69ef4178d4a2c974fed5708ad2d487d0c19 (patch) | |
tree | 6608e4005a0fab2cbe977d442456e6b617d2089a /python | |
parent | 927c87d253c42282e8f62038363399f7643fcc76 (diff) | |
download | samba-9807d69ef4178d4a2c974fed5708ad2d487d0c19.tar.gz |
python/tests: use a system session_info in posixacl.py
Previously posixacl.py passed None as session_info object from
get_session_info().
That meant that the if/else branch referring to session_info:
if nwrap_winbind_active or session_info:
self.assertEquals(posix_acl.acl[1].a_perm, 7)
else:
self.assertEquals(posix_acl.acl[1].a_perm, 6)
must be tweaked to take into account that session info is now either
* a system session_info in which case we must continue to use the if branch in
the code, or
* a user session_info in which case we must continue to go through the else
branch
Using
is_user_session = not session_info.security_token.is_system()
in place of just "session_info" does the trick.
Cf the classes SessionedPosixAclMappingTests and
UnixSessionedPosixAclMappingTests in posixacl.py, those are the ones that
trigger test execution with a user session.
Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
Diffstat (limited to 'python')
-rw-r--r-- | python/samba/tests/posixacl.py | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/python/samba/tests/posixacl.py b/python/samba/tests/posixacl.py index 0ba3dc50089..0c95d9061fe 100644 --- a/python/samba/tests/posixacl.py +++ b/python/samba/tests/posixacl.py @@ -27,6 +27,7 @@ from samba.samba3 import smbd, passdb from samba.samba3 import param as s3param from samba import auth from samba.samdb import SamDB +from samba.auth_util import system_session_unix DOM_SID = "S-1-5-21-2212615479-2695158682-2101375467" ACL = "O:S-1-5-21-2212615479-2695158682-2101375467-512G:S-1-5-21-2212615479-2695158682-2101375467-513D:(A;OICI;0x001f01ff;;;S-1-5-21-2212615479-2695158682-2101375467-512)" @@ -52,11 +53,8 @@ class PosixAclMappingTests(SmbdBaseTests): def get_session_info(self, domsid=DOM_SID): """ Get session_info for setntacl. - - This test case always return None, to run tests without session_info - like before. To be overridden in derived class. """ - return None + return system_session_unix() def print_posix_acl(self, posix_acl): aclstr = "" @@ -323,6 +321,7 @@ class PosixAclMappingTests(SmbdBaseTests): nwrap_winbind_active = (nwrap_module_so_path != "" and nwrap_module_fn_prefix == "winbind") + is_user_session = not session_info.security_token.is_system() LA_sid = security.dom_sid(str(domsid) + "-" + str(security.DOMAIN_RID_ADMINISTRATOR)) BA_sid = security.dom_sid(security.SID_BUILTIN_ADMINISTRATORS) @@ -353,7 +352,7 @@ class PosixAclMappingTests(SmbdBaseTests): self.assertEquals(posix_acl.acl[0].info.gid, BA_gid) self.assertEquals(posix_acl.acl[1].a_type, smb_acl.SMB_ACL_USER) - if nwrap_winbind_active or session_info: + if nwrap_winbind_active or is_user_session: self.assertEquals(posix_acl.acl[1].a_perm, 7) else: self.assertEquals(posix_acl.acl[1].a_perm, 6) @@ -363,7 +362,7 @@ class PosixAclMappingTests(SmbdBaseTests): self.assertEquals(posix_acl.acl[2].a_perm, 0) self.assertEquals(posix_acl.acl[3].a_type, smb_acl.SMB_ACL_USER_OBJ) - if nwrap_winbind_active or session_info: + if nwrap_winbind_active or is_user_session: self.assertEquals(posix_acl.acl[3].a_perm, 7) else: self.assertEquals(posix_acl.acl[3].a_perm, 6) @@ -665,6 +664,7 @@ class PosixAclMappingTests(SmbdBaseTests): nwrap_winbind_active = (nwrap_module_so_path != "" and nwrap_module_fn_prefix == "winbind") + is_user_session = not session_info.security_token.is_system() LA_sid = security.dom_sid(str(domsid) + "-" + str(security.DOMAIN_RID_ADMINISTRATOR)) BA_sid = security.dom_sid(security.SID_BUILTIN_ADMINISTRATORS) @@ -698,7 +698,7 @@ class PosixAclMappingTests(SmbdBaseTests): self.assertEquals(posix_acl.acl[0].info.gid, BA_gid) self.assertEquals(posix_acl.acl[1].a_type, smb_acl.SMB_ACL_USER) - if nwrap_winbind_active or session_info: + if nwrap_winbind_active or is_user_session: self.assertEquals(posix_acl.acl[1].a_perm, 7) else: self.assertEquals(posix_acl.acl[1].a_perm, 6) @@ -708,7 +708,7 @@ class PosixAclMappingTests(SmbdBaseTests): self.assertEquals(posix_acl.acl[2].a_perm, 0) self.assertEquals(posix_acl.acl[3].a_type, smb_acl.SMB_ACL_USER_OBJ) - if nwrap_winbind_active or session_info: + if nwrap_winbind_active or is_user_session: self.assertEquals(posix_acl.acl[3].a_perm, 7) else: self.assertEquals(posix_acl.acl[3].a_perm, 6) |