ksmbd: don't set FILE DELETE and FILE_DELETE_CHILD in access mask by default
authorNamjae Jeon <namjae.jeon@samsung.com>
Fri, 20 Aug 2021 06:38:06 +0000 (15:38 +0900)
committerNamjae Jeon <namjae.jeon@samsung.com>
Fri, 20 Aug 2021 06:45:44 +0000 (15:45 +0900)
When there is no dacl in request, ksmbd send dacl that coverted by using
file permission. This patch don't set FILE DELETE and FILE_DELETE_CHILD
in access mask by default.

Signed-off-by: Namjae Jeon <namjae.jeon@samsung.com>
Signed-off-by: Steve French <stfrench@microsoft.com>
fs/ksmbd/smbacl.c

index 2ca3714..20455d8 100644 (file)
@@ -731,7 +731,6 @@ static void set_mode_dacl(struct user_namespace *user_ns,
        ace_size = fill_ace_for_sid(pace, sid, ACCESS_ALLOWED, 0,
                                    fattr->cf_mode, 0700);
        pace->sid.sub_auth[pace->sid.num_subauth++] = cpu_to_le32(uid);
-       pace->access_req |= FILE_DELETE_LE | FILE_DELETE_CHILD_LE;
        pace->size = cpu_to_le16(ace_size + 4);
        size += le16_to_cpu(pace->size);
        pace = (struct smb_ace *)((char *)pndace + size);
@@ -752,7 +751,6 @@ static void set_mode_dacl(struct user_namespace *user_ns,
                /* creator owner */
                size += fill_ace_for_sid(pace, &creator_owner, ACCESS_ALLOWED,
                                         0x0b, fattr->cf_mode, 0700);
-               pace->access_req |= FILE_DELETE_LE | FILE_DELETE_CHILD_LE;
                pace = (struct smb_ace *)((char *)pndace + size);
 
                /* creator group */