[Pkg-samba-maint] [samba] 22/29: Fix bug 10196 - RW Deny for a specific user is not overriding RW Allow for a group.

Jelmer Vernooij jelmer at moszumanska.debian.org
Fri Dec 6 23:16:46 UTC 2013


This is an automated email from the git hooks/post-receive script.

jelmer pushed a commit to branch samba_4.1
in repository samba.

commit d815b15181243e6eddb20fe5d7aeaf33bb68ec7e
Author: Jeremy Allison <jra at samba.org>
Date:   Wed Oct 23 15:06:40 2013 -0700

    Fix bug 10196 - RW Deny for a specific user is not overriding RW Allow for a group.
    
    Fix posix_acl tests to match the change in writing ACLs
    with ID_TYPE_BOTH.
    
    Signed-off-by: Jeremy Allison <jra at samba.org>
    Reviewed-by: David Disseldorp <ddiss at samba.org>
    (cherry picked from commit a1bc1c32e33508c45e614646d69a5f5d67ba22be)
    
    Autobuild-User(v4-1-test): Karolin Seeger <kseeger at samba.org>
    Autobuild-Date(v4-1-test): Thu Nov 14 11:36:24 CET 2013 on sn-devel-104
---
 python/samba/tests/posixacl.py | 160 +++++++++++++++++++++++++++++------------
 1 file changed, 116 insertions(+), 44 deletions(-)

diff --git a/python/samba/tests/posixacl.py b/python/samba/tests/posixacl.py
index f3a4772..bb104f7 100644
--- a/python/samba/tests/posixacl.py
+++ b/python/samba/tests/posixacl.py
@@ -336,7 +336,7 @@ class PosixAclMappingTests(TestCaseInTempDir):
         (AU_gid,AU_type) = s4_passdb.sid_to_id(AU_sid)
         self.assertEquals(AU_type, idmap.ID_TYPE_BOTH)
 
-        self.assertEquals(posix_acl.count, 9)
+        self.assertEquals(posix_acl.count, 13)
 
         self.assertEquals(posix_acl.acl[0].a_type, smb_acl.SMB_ACL_GROUP)
         self.assertEquals(posix_acl.acl[0].a_perm, 7)
@@ -352,23 +352,39 @@ class PosixAclMappingTests(TestCaseInTempDir):
         self.assertEquals(posix_acl.acl[3].a_type, smb_acl.SMB_ACL_USER_OBJ)
         self.assertEquals(posix_acl.acl[3].a_perm, 6)
 
-        self.assertEquals(posix_acl.acl[4].a_type, smb_acl.SMB_ACL_GROUP_OBJ)
+        self.assertEquals(posix_acl.acl[4].a_type, smb_acl.SMB_ACL_USER)
         self.assertEquals(posix_acl.acl[4].a_perm, 7)
+        self.assertEquals(posix_acl.acl[4].info.uid, BA_gid)
 
-        self.assertEquals(posix_acl.acl[5].a_type, smb_acl.SMB_ACL_GROUP)
-        self.assertEquals(posix_acl.acl[5].a_perm, 5)
-        self.assertEquals(posix_acl.acl[5].info.gid, SO_gid)
+        self.assertEquals(posix_acl.acl[5].a_type, smb_acl.SMB_ACL_GROUP_OBJ)
+        self.assertEquals(posix_acl.acl[5].a_perm, 7)
 
-        self.assertEquals(posix_acl.acl[6].a_type, smb_acl.SMB_ACL_GROUP)
-        self.assertEquals(posix_acl.acl[6].a_perm, 7)
-        self.assertEquals(posix_acl.acl[6].info.gid, SY_gid)
+        self.assertEquals(posix_acl.acl[6].a_type, smb_acl.SMB_ACL_USER)
+        self.assertEquals(posix_acl.acl[6].a_perm, 5)
+        self.assertEquals(posix_acl.acl[6].info.uid, SO_gid)
 
         self.assertEquals(posix_acl.acl[7].a_type, smb_acl.SMB_ACL_GROUP)
         self.assertEquals(posix_acl.acl[7].a_perm, 5)
-        self.assertEquals(posix_acl.acl[7].info.gid, AU_gid)
+        self.assertEquals(posix_acl.acl[7].info.gid, SO_gid)
 
-        self.assertEquals(posix_acl.acl[8].a_type, smb_acl.SMB_ACL_MASK)
+        self.assertEquals(posix_acl.acl[8].a_type, smb_acl.SMB_ACL_USER)
         self.assertEquals(posix_acl.acl[8].a_perm, 7)
+        self.assertEquals(posix_acl.acl[8].info.uid, SY_gid)
+
+        self.assertEquals(posix_acl.acl[9].a_type, smb_acl.SMB_ACL_GROUP)
+        self.assertEquals(posix_acl.acl[9].a_perm, 7)
+        self.assertEquals(posix_acl.acl[9].info.gid, SY_gid)
+
+        self.assertEquals(posix_acl.acl[10].a_type, smb_acl.SMB_ACL_USER)
+        self.assertEquals(posix_acl.acl[10].a_perm, 5)
+        self.assertEquals(posix_acl.acl[10].info.uid, AU_gid)
+
+        self.assertEquals(posix_acl.acl[11].a_type, smb_acl.SMB_ACL_GROUP)
+        self.assertEquals(posix_acl.acl[11].a_perm, 5)
+        self.assertEquals(posix_acl.acl[11].info.gid, AU_gid)
+
+        self.assertEquals(posix_acl.acl[12].a_type, smb_acl.SMB_ACL_MASK)
+        self.assertEquals(posix_acl.acl[12].a_perm, 7)
 
 
 # check that it matches:
@@ -454,7 +470,7 @@ class PosixAclMappingTests(TestCaseInTempDir):
         (AU_gid,AU_type) = s4_passdb.sid_to_id(AU_sid)
         self.assertEquals(AU_type, idmap.ID_TYPE_BOTH)
 
-        self.assertEquals(posix_acl.count, 9)
+        self.assertEquals(posix_acl.count, 13)
 
         self.assertEquals(posix_acl.acl[0].a_type, smb_acl.SMB_ACL_GROUP)
         self.assertEquals(posix_acl.acl[0].a_perm, 7)
@@ -470,23 +486,39 @@ class PosixAclMappingTests(TestCaseInTempDir):
         self.assertEquals(posix_acl.acl[3].a_type, smb_acl.SMB_ACL_USER_OBJ)
         self.assertEquals(posix_acl.acl[3].a_perm, 7)
 
-        self.assertEquals(posix_acl.acl[4].a_type, smb_acl.SMB_ACL_GROUP_OBJ)
+        self.assertEquals(posix_acl.acl[4].a_type, smb_acl.SMB_ACL_USER)
         self.assertEquals(posix_acl.acl[4].a_perm, 7)
+        self.assertEquals(posix_acl.acl[4].info.uid, BA_gid)
 
-        self.assertEquals(posix_acl.acl[5].a_type, smb_acl.SMB_ACL_GROUP)
-        self.assertEquals(posix_acl.acl[5].a_perm, 5)
-        self.assertEquals(posix_acl.acl[5].info.gid, SO_gid)
+        self.assertEquals(posix_acl.acl[5].a_type, smb_acl.SMB_ACL_GROUP_OBJ)
+        self.assertEquals(posix_acl.acl[5].a_perm, 7)
 
-        self.assertEquals(posix_acl.acl[6].a_type, smb_acl.SMB_ACL_GROUP)
-        self.assertEquals(posix_acl.acl[6].a_perm, 7)
-        self.assertEquals(posix_acl.acl[6].info.gid, SY_gid)
+        self.assertEquals(posix_acl.acl[6].a_type, smb_acl.SMB_ACL_USER)
+        self.assertEquals(posix_acl.acl[6].a_perm, 5)
+        self.assertEquals(posix_acl.acl[6].info.uid, SO_gid)
 
         self.assertEquals(posix_acl.acl[7].a_type, smb_acl.SMB_ACL_GROUP)
         self.assertEquals(posix_acl.acl[7].a_perm, 5)
-        self.assertEquals(posix_acl.acl[7].info.gid, AU_gid)
+        self.assertEquals(posix_acl.acl[7].info.gid, SO_gid)
 
-        self.assertEquals(posix_acl.acl[8].a_type, smb_acl.SMB_ACL_MASK)
+        self.assertEquals(posix_acl.acl[8].a_type, smb_acl.SMB_ACL_USER)
         self.assertEquals(posix_acl.acl[8].a_perm, 7)
+        self.assertEquals(posix_acl.acl[8].info.uid, SY_gid)
+
+        self.assertEquals(posix_acl.acl[9].a_type, smb_acl.SMB_ACL_GROUP)
+        self.assertEquals(posix_acl.acl[9].a_perm, 7)
+        self.assertEquals(posix_acl.acl[9].info.gid, SY_gid)
+
+        self.assertEquals(posix_acl.acl[10].a_type, smb_acl.SMB_ACL_USER)
+        self.assertEquals(posix_acl.acl[10].a_perm, 5)
+        self.assertEquals(posix_acl.acl[10].info.uid, AU_gid)
+
+        self.assertEquals(posix_acl.acl[11].a_type, smb_acl.SMB_ACL_GROUP)
+        self.assertEquals(posix_acl.acl[11].a_perm, 5)
+        self.assertEquals(posix_acl.acl[11].info.gid, AU_gid)
+
+        self.assertEquals(posix_acl.acl[12].a_type, smb_acl.SMB_ACL_MASK)
+        self.assertEquals(posix_acl.acl[12].a_perm, 7)
 
 
 # check that it matches:
@@ -534,7 +566,7 @@ class PosixAclMappingTests(TestCaseInTempDir):
         (PA_gid,PA_type) = s4_passdb.sid_to_id(PA_sid)
         self.assertEquals(PA_type, idmap.ID_TYPE_BOTH)
 
-        self.assertEquals(posix_acl.count, 10)
+        self.assertEquals(posix_acl.count, 15)
 
         self.assertEquals(posix_acl.acl[0].a_type, smb_acl.SMB_ACL_GROUP)
         self.assertEquals(posix_acl.acl[0].a_perm, 7)
@@ -550,27 +582,47 @@ class PosixAclMappingTests(TestCaseInTempDir):
         self.assertEquals(posix_acl.acl[3].a_type, smb_acl.SMB_ACL_USER_OBJ)
         self.assertEquals(posix_acl.acl[3].a_perm, 7)
 
-        self.assertEquals(posix_acl.acl[4].a_type, smb_acl.SMB_ACL_GROUP_OBJ)
+        self.assertEquals(posix_acl.acl[4].a_type, smb_acl.SMB_ACL_USER)
         self.assertEquals(posix_acl.acl[4].a_perm, 7)
+        self.assertEquals(posix_acl.acl[4].info.uid, BA_gid)
 
-        self.assertEquals(posix_acl.acl[5].a_type, smb_acl.SMB_ACL_GROUP)
-        self.assertEquals(posix_acl.acl[5].a_perm, 5)
-        self.assertEquals(posix_acl.acl[5].info.gid, SO_gid)
+        self.assertEquals(posix_acl.acl[5].a_type, smb_acl.SMB_ACL_GROUP_OBJ)
+        self.assertEquals(posix_acl.acl[5].a_perm, 7)
 
-        self.assertEquals(posix_acl.acl[6].a_type, smb_acl.SMB_ACL_GROUP)
-        self.assertEquals(posix_acl.acl[6].a_perm, 7)
-        self.assertEquals(posix_acl.acl[6].info.gid, SY_gid)
+        self.assertEquals(posix_acl.acl[6].a_type, smb_acl.SMB_ACL_USER)
+        self.assertEquals(posix_acl.acl[6].a_perm, 5)
+        self.assertEquals(posix_acl.acl[6].info.uid, SO_gid)
 
         self.assertEquals(posix_acl.acl[7].a_type, smb_acl.SMB_ACL_GROUP)
         self.assertEquals(posix_acl.acl[7].a_perm, 5)
-        self.assertEquals(posix_acl.acl[7].info.gid, AU_gid)
+        self.assertEquals(posix_acl.acl[7].info.gid, SO_gid)
 
-        self.assertEquals(posix_acl.acl[8].a_type, smb_acl.SMB_ACL_GROUP)
+        self.assertEquals(posix_acl.acl[8].a_type, smb_acl.SMB_ACL_USER)
         self.assertEquals(posix_acl.acl[8].a_perm, 7)
-        self.assertEquals(posix_acl.acl[8].info.gid, PA_gid)
+        self.assertEquals(posix_acl.acl[8].info.uid, SY_gid)
 
-        self.assertEquals(posix_acl.acl[9].a_type, smb_acl.SMB_ACL_MASK)
+        self.assertEquals(posix_acl.acl[9].a_type, smb_acl.SMB_ACL_GROUP)
         self.assertEquals(posix_acl.acl[9].a_perm, 7)
+        self.assertEquals(posix_acl.acl[9].info.gid, SY_gid)
+
+        self.assertEquals(posix_acl.acl[10].a_type, smb_acl.SMB_ACL_USER)
+        self.assertEquals(posix_acl.acl[10].a_perm, 5)
+        self.assertEquals(posix_acl.acl[10].info.uid, AU_gid)
+
+        self.assertEquals(posix_acl.acl[11].a_type, smb_acl.SMB_ACL_GROUP)
+        self.assertEquals(posix_acl.acl[11].a_perm, 5)
+        self.assertEquals(posix_acl.acl[11].info.gid, AU_gid)
+
+        self.assertEquals(posix_acl.acl[12].a_type, smb_acl.SMB_ACL_USER)
+        self.assertEquals(posix_acl.acl[12].a_perm, 7)
+        self.assertEquals(posix_acl.acl[12].info.uid, PA_gid)
+
+        self.assertEquals(posix_acl.acl[13].a_type, smb_acl.SMB_ACL_GROUP)
+        self.assertEquals(posix_acl.acl[13].a_perm, 7)
+        self.assertEquals(posix_acl.acl[13].info.gid, PA_gid)
+
+        self.assertEquals(posix_acl.acl[14].a_type, smb_acl.SMB_ACL_MASK)
+        self.assertEquals(posix_acl.acl[14].a_perm, 7)
 
 
 # check that it matches:
@@ -621,7 +673,7 @@ class PosixAclMappingTests(TestCaseInTempDir):
         (PA_gid,PA_type) = s4_passdb.sid_to_id(PA_sid)
         self.assertEquals(PA_type, idmap.ID_TYPE_BOTH)
 
-        self.assertEquals(posix_acl.count, 10)
+        self.assertEquals(posix_acl.count, 15)
 
         self.assertEquals(posix_acl.acl[0].a_type, smb_acl.SMB_ACL_GROUP)
         self.assertEquals(posix_acl.acl[0].a_perm, 7)
@@ -637,27 +689,47 @@ class PosixAclMappingTests(TestCaseInTempDir):
         self.assertEquals(posix_acl.acl[3].a_type, smb_acl.SMB_ACL_USER_OBJ)
         self.assertEquals(posix_acl.acl[3].a_perm, 6)
 
-        self.assertEquals(posix_acl.acl[4].a_type, smb_acl.SMB_ACL_GROUP_OBJ)
+        self.assertEquals(posix_acl.acl[4].a_type, smb_acl.SMB_ACL_USER)
         self.assertEquals(posix_acl.acl[4].a_perm, 7)
+        self.assertEquals(posix_acl.acl[4].info.uid, BA_gid)
 
-        self.assertEquals(posix_acl.acl[5].a_type, smb_acl.SMB_ACL_GROUP)
-        self.assertEquals(posix_acl.acl[5].a_perm, 5)
-        self.assertEquals(posix_acl.acl[5].info.gid, SO_gid)
+        self.assertEquals(posix_acl.acl[5].a_type, smb_acl.SMB_ACL_GROUP_OBJ)
+        self.assertEquals(posix_acl.acl[5].a_perm, 7)
 
-        self.assertEquals(posix_acl.acl[6].a_type, smb_acl.SMB_ACL_GROUP)
-        self.assertEquals(posix_acl.acl[6].a_perm, 7)
-        self.assertEquals(posix_acl.acl[6].info.gid, SY_gid)
+        self.assertEquals(posix_acl.acl[6].a_type, smb_acl.SMB_ACL_USER)
+        self.assertEquals(posix_acl.acl[6].a_perm, 5)
+        self.assertEquals(posix_acl.acl[6].info.uid, SO_gid)
 
         self.assertEquals(posix_acl.acl[7].a_type, smb_acl.SMB_ACL_GROUP)
         self.assertEquals(posix_acl.acl[7].a_perm, 5)
-        self.assertEquals(posix_acl.acl[7].info.gid, AU_gid)
+        self.assertEquals(posix_acl.acl[7].info.gid, SO_gid)
 
-        self.assertEquals(posix_acl.acl[8].a_type, smb_acl.SMB_ACL_GROUP)
+        self.assertEquals(posix_acl.acl[8].a_type, smb_acl.SMB_ACL_USER)
         self.assertEquals(posix_acl.acl[8].a_perm, 7)
-        self.assertEquals(posix_acl.acl[8].info.gid, PA_gid)
+        self.assertEquals(posix_acl.acl[8].info.uid, SY_gid)
 
-        self.assertEquals(posix_acl.acl[9].a_type, smb_acl.SMB_ACL_MASK)
+        self.assertEquals(posix_acl.acl[9].a_type, smb_acl.SMB_ACL_GROUP)
         self.assertEquals(posix_acl.acl[9].a_perm, 7)
+        self.assertEquals(posix_acl.acl[9].info.gid, SY_gid)
+
+        self.assertEquals(posix_acl.acl[10].a_type, smb_acl.SMB_ACL_USER)
+        self.assertEquals(posix_acl.acl[10].a_perm, 5)
+        self.assertEquals(posix_acl.acl[10].info.uid, AU_gid)
+
+        self.assertEquals(posix_acl.acl[11].a_type, smb_acl.SMB_ACL_GROUP)
+        self.assertEquals(posix_acl.acl[11].a_perm, 5)
+        self.assertEquals(posix_acl.acl[11].info.gid, AU_gid)
+
+        self.assertEquals(posix_acl.acl[12].a_type, smb_acl.SMB_ACL_USER)
+        self.assertEquals(posix_acl.acl[12].a_perm, 7)
+        self.assertEquals(posix_acl.acl[12].info.uid, PA_gid)
+
+        self.assertEquals(posix_acl.acl[13].a_type, smb_acl.SMB_ACL_GROUP)
+        self.assertEquals(posix_acl.acl[13].a_perm, 7)
+        self.assertEquals(posix_acl.acl[13].info.gid, PA_gid)
+
+        self.assertEquals(posix_acl.acl[14].a_type, smb_acl.SMB_ACL_MASK)
+        self.assertEquals(posix_acl.acl[14].a_perm, 7)
 
 
 # check that it matches:

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-samba/samba.git




More information about the Pkg-samba-maint mailing list