smb3: fix access denied on change notify request to some servers
authorSteve French <stfrench@microsoft.com>
Tue, 7 Jul 2020 23:08:46 +0000 (18:08 -0500)
committerSteve French <stfrench@microsoft.com>
Tue, 7 Jul 2020 23:24:39 +0000 (18:24 -0500)
read permission, not just read attributes permission, is required
on the directory.

See MS-SMB2 (protocol specification) section 3.3.5.19.

Signed-off-by: Steve French <stfrench@microsoft.com>
CC: Stable <stable@vger.kernel.org> # v5.6+
Reviewed-by: Pavel Shilovsky <pshilov@microsoft.com>
fs/cifs/smb2ops.c

index d9fdafa5eb601123a00a6b5c7c3eb6c42a84fbff..32f90dc82c840fad48bf5a37b0d6c6a780bc7db7 100644 (file)
@@ -2148,7 +2148,7 @@ smb3_notify(const unsigned int xid, struct file *pfile,
 
        tcon = cifs_sb_master_tcon(cifs_sb);
        oparms.tcon = tcon;
-       oparms.desired_access = FILE_READ_ATTRIBUTES;
+       oparms.desired_access = FILE_READ_ATTRIBUTES | FILE_READ_DATA;
        oparms.disposition = FILE_OPEN;
        oparms.create_options = cifs_create_options(cifs_sb, 0);
        oparms.fid = &fid;