r3951: Fix for bugid #2081 reported by John Janosik <jpjanosi@us.ibm.com> - ensure
authorJeremy Allison <jra@samba.org>
Thu, 25 Nov 2004 00:59:44 +0000 (00:59 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 15:53:26 +0000 (10:53 -0500)
SE_DESC_DACL_PROTECTED is set if "map acl inherit = no".
Jeremy.

source/smbd/posix_acls.c

index 7e20313b76cefdc4a6a70065fa85a830c436af1e..d2e12fc82a9ffa72a6d4c7e79cea1c62dddf227a 100644 (file)
@@ -2880,9 +2880,11 @@ size_t get_nt_acl(files_struct *fsp, uint32 security_info, SEC_DESC **ppdesc)
                 * inherited at file create time, so ACLs never contain
                 * any ACEs that are inherited dynamically. The DACL_PROTECTED
                 * flag doesn't seem to bother Windows NT.
+                * Always set this if map acl inherit is turned off.
                 */
-               if (get_protected_flag(pal))
+               if (get_protected_flag(pal) || !lp_map_acl_inherit(SNUM(conn))) {
                        psd->type |= SE_DESC_DACL_PROTECTED;
+               }
        }
 
        if (psd->dacl)