diff options
author | Jeremy Allison <jra@samba.org> | 2010-10-15 14:12:04 -0700 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2010-10-15 17:38:21 -0700 |
commit | 8cad5e23b6e2440a566def6fb138d484e3b47643 (patch) | |
tree | f3b5321cfcb66886498b6d4f89d2b3cf69a7d19a /source3 | |
parent | 92adb686372a9b67e47efb5b051bc351212f1780 (diff) | |
download | samba-8cad5e23b6e2440a566def6fb138d484e3b47643.tar.gz samba-8cad5e23b6e2440a566def6fb138d484e3b47643.tar.bz2 samba-8cad5e23b6e2440a566def6fb138d484e3b47643.zip |
Fix bug #7734 - When creating files with "inherit ACLs" set to true, we neglect to apply appropriate create masks.
Jeremy.
Diffstat (limited to 'source3')
-rw-r--r-- | source3/modules/vfs_default.c | 2 | ||||
-rw-r--r-- | source3/smbd/open.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/source3/modules/vfs_default.c b/source3/modules/vfs_default.c index c2907822af..2cbb84cad0 100644 --- a/source3/modules/vfs_default.c +++ b/source3/modules/vfs_default.c @@ -217,7 +217,7 @@ static int vfswrap_mkdir(vfs_handle_struct *handle, const char *path, mode_t mo if (lp_inherit_acls(SNUM(handle->conn)) && parent_dirname(talloc_tos(), path, &parent, NULL) && (has_dacl = directory_has_default_acl(handle->conn, parent))) - mode = 0777; + mode = (0777 & lp_dir_mask(SNUM(handle->conn))); TALLOC_FREE(parent); diff --git a/source3/smbd/open.c b/source3/smbd/open.c index 10e0120374..01f0cd699a 100644 --- a/source3/smbd/open.c +++ b/source3/smbd/open.c @@ -1997,7 +1997,7 @@ static NTSTATUS open_file_ntcreate(connection_struct *conn, if ((flags2 & O_CREAT) && lp_inherit_acls(SNUM(conn)) && (def_acl = directory_has_default_acl(conn, parent_dir))) { - unx_mode = 0777; + unx_mode = (0777 & lp_create_mask(SNUM(conn))); } DEBUG(4,("calling open_file with flags=0x%X flags2=0x%X mode=0%o, " |