The branch, v3-5-test has been updated
       via  67235a5 Fix bug #7812 - vfs_acl_xattr/vfs_acl_tdb: ACL inheritance 
cannot be disabled
      from  941129f Fix our privileges code to display privileges with the 
"high" 32-bit value set.

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-5-test


- Log -----------------------------------------------------------------
commit 67235a5532a00e6ccb41748dc9a8c3e9159ba79e
Author: Jeremy Allison <[email protected]>
Date:   Tue Nov 23 14:21:25 2010 -0800

    Fix bug #7812 - vfs_acl_xattr/vfs_acl_tdb: ACL inheritance cannot be 
disabled
    
    We were losing the incoming security descriptor revision number and
    most importantly the "type" field as sent by the client. Ensure we
    correctly store these in the xattr object.
    
    Jeremy.

-----------------------------------------------------------------------

Summary of changes:
 source3/modules/vfs_acl_common.c |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/modules/vfs_acl_common.c b/source3/modules/vfs_acl_common.c
index c91765c..f1884f5 100644
--- a/source3/modules/vfs_acl_common.c
+++ b/source3/modules/vfs_acl_common.c
@@ -723,6 +723,10 @@ static NTSTATUS fset_nt_acl_common(vfs_handle_struct 
*handle, files_struct *fsp,
                return status;
        }
 
+       psd->revision = orig_psd->revision;
+       /* All our SD's are self relative. */
+       psd->type = orig_psd->type | SEC_DESC_SELF_RELATIVE;
+
        if ((security_info_sent & SECINFO_OWNER) && (orig_psd->owner_sid != 
NULL)) {
                psd->owner_sid = orig_psd->owner_sid;
        }
@@ -731,9 +735,11 @@ static NTSTATUS fset_nt_acl_common(vfs_handle_struct 
*handle, files_struct *fsp,
        }
        if (security_info_sent & SECINFO_DACL) {
                psd->dacl = orig_psd->dacl;
+               psd->type |= SEC_DESC_DACL_PRESENT;
        }
        if (security_info_sent & SECINFO_SACL) {
                psd->sacl = orig_psd->sacl;
+               psd->type |= SEC_DESC_SACL_PRESENT;
        }
 
        status = SMB_VFS_NEXT_FSET_NT_ACL(handle, fsp, security_info_sent, psd);


-- 
Samba Shared Repository

Reply via email to