summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIra Cooper <ira@wakeful.net>2011-09-07 12:24:22 -0700
committerKarolin Seeger <kseeger@samba.org>2011-10-12 20:56:24 +0200
commit97eaf243acb8e87ed989e645cada7db36f619ee7 (patch)
treef9ae697577070d96d64f64ac2cece309371a8d31
parent8d025d4304a91f942b3a8095616a823f5f1b92ea (diff)
downloadsamba-97eaf243acb8e87ed989e645cada7db36f619ee7.tar.gz
samba-97eaf243acb8e87ed989e645cada7db36f619ee7.tar.xz
samba-97eaf243acb8e87ed989e645cada7db36f619ee7.zip
Fix bug #8442 - NFSv4 DENY ACLs always include SYNCHRONIZE flag - blocking renames.
Thanks to Youzhong Yang for discovering this issue. Autobuild-User: Jeremy Allison <jra@samba.org> Autobuild-Date: Wed Sep 7 22:56:06 CEST 2011 on sn-devel-104 (cherry picked from commit 600451da33728cbd377b122c85cf146f5b319998) (cherry picked from commit 8678e2158064e075ed276a2a4f1ac552903af414)
-rw-r--r--source3/modules/nfs4_acls.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/source3/modules/nfs4_acls.c b/source3/modules/nfs4_acls.c
index c9d795d35c8..bea452880e6 100644
--- a/source3/modules/nfs4_acls.c
+++ b/source3/modules/nfs4_acls.c
@@ -337,7 +337,13 @@ static bool smbacl4_nfs42win(TALLOC_CTX *mem_ctx, SMB4ACL_T *theacl, /* in */
/* Windows clients expect SYNC on acls to
correctly allow rename. See bug #7909. */
- mask = ace->aceMask | SMB_ACE4_SYNCHRONIZE;
+ if(ace->aceType & SMB_ACE4_ACCESS_DENIED_ACE_TYPE) {
+ /* But not on DENY ace entries. See
+ bug #8442. */
+ mask = ace->aceMask;
+ } else {
+ mask = ace->aceMask | SMB_ACE4_SYNCHRONIZE;
+ }
init_sec_ace(&nt_ace_list[good_aces++], &sid,
ace->aceType, mask,
win_ace_flags);