Attempt to fix one of the last two bugs with the full Windows ACL support.
authorJeremy Allison <jra@samba.org>
Thu, 24 Dec 2009 01:19:22 +0000 (17:19 -0800)
committerJeremy Allison <jra@samba.org>
Thu, 24 Dec 2009 01:25:48 +0000 (17:25 -0800)
commitc5fa822d59b55b8f62e3c619004e9fb2005879eb
treefd069779d9a3cc51302482b9448ff4d8256c48f2
parentddf5ce0073127c9c708bba8a3e7470e4ef6b77ac
Attempt to fix one of the last two bugs with the full Windows ACL support.

When returning an underlying ACL on a directory, normally on a
POSIX system it has no inheritable entries, which breaks the
Windows ACL when a user does a get/set of a Windows ACL on a
POSIX directory with no existing stored Windows ACL from
the Windows ACL editor. What happens is any new entry added
by the user gets set inheritable, but none of the others
entries are (as returned by default). So any new files then
only inherit the single new ACE entry (the one marked inheritable
by the ACL editor).

Fix this by faking up a default 3 element inheritable ACL that
represents what a user creating a POSIX file or directory will
get by default from the smbd code.

Jeremy.
(cherry picked from commit 6dcbb84d485b8a8ccf0c3a70d9f5f7e951aaf1c6)
source3/modules/vfs_acl_common.c