From: Jeremy Allison Date: Tue, 2 Oct 2012 17:15:54 +0000 (-0700) Subject: When setting a non-default ACL, don't forget to apply masks to SMB_ACL_USER and SMB_A... X-Git-Tag: samba-3.5.19~7 X-Git-Url: http://git.samba.org/?p=samba.git;a=commitdiff_plain;h=84cee26dfac47f3a8cb47b6b58da9290d4fde41a When setting a non-default ACL, don't forget to apply masks to SMB_ACL_USER and SMB_ACL_GROUP entries. Fix bug #9236 - ACL masks incorrectly applied when setting ACLs. (cherry picked from commit 7dcb017fc1d8e8af5878b2b0139686829c0c1594) --- diff --git a/source3/smbd/posix_acls.c b/source3/smbd/posix_acls.c index f7258bd66d7..646efa4b69c 100644 --- a/source3/smbd/posix_acls.c +++ b/source3/smbd/posix_acls.c @@ -1386,6 +1386,16 @@ static bool ensure_canon_entry_valid(canon_ace **pp_ace, } got_other = True; pace_other = pace; + + } else if (pace->type == SMB_ACL_USER || pace->type == SMB_ACL_GROUP) { + + /* + * Ensure create mask/force create mode is respected on set. + */ + + if (setting_acl && !is_default_acl) { + apply_default_perms(params, is_directory, pace, S_IRGRP); + } } }