From 46798c8dea820ae91e7ed48f2a673d321b4676bc Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Wed, 7 Sep 2011 14:57:11 -0700 Subject: [PATCH] Tidy up previous patch for bug #8442 - NFSv4 DENY ACLs always include SYNCHRONIZE flag - blocking renames. aceType is an enum field, not a bitmask. Autobuild-User: Jeremy Allison Autobuild-Date: Thu Sep 8 03:34:39 CEST 2011 on sn-devel-104 (cherry picked from commit 0aa6751e919d842cdae044be26f6da725063eac2) --- source3/modules/nfs4_acls.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/source3/modules/nfs4_acls.c b/source3/modules/nfs4_acls.c index bea452880e6..e5cc32dd1c4 100644 --- a/source3/modules/nfs4_acls.c +++ b/source3/modules/nfs4_acls.c @@ -335,13 +335,12 @@ static bool smbacl4_nfs42win(TALLOC_CTX *mem_ctx, SMB4ACL_T *theacl, /* in */ DEBUG(10, ("Windows mapped ace flags: 0x%x => 0x%x\n", ace->aceFlags, win_ace_flags)); + mask = ace->aceMask; /* Windows clients expect SYNC on acls to correctly allow rename. See bug #7909. */ - if(ace->aceType & SMB_ACE4_ACCESS_DENIED_ACE_TYPE) { - /* But not on DENY ace entries. See - bug #8442. */ - mask = ace->aceMask; - } else { + /* But not on DENY ace entries. See + bug #8442. */ + if(ace->aceType == SMB_ACE4_ACCESS_ALLOWED_ACE_TYPE) { mask = ace->aceMask | SMB_ACE4_SYNCHRONIZE; } init_sec_ace(&nt_ace_list[good_aces++], &sid, -- 2.34.1