Btrfs: check for read permission on src file in the clone ioctl

The existing code would have allowed you to clone a file that was
only open for writing

Signed-off-by: Chris Mason <chris.mason@oracle.com>

authored by Dan Rosenberg and committed by Chris Mason 5dc64164 9f680ce0

Changed files
+5
fs
btrfs
+5
fs/btrfs/ioctl.c
··· 1480 1480 ret = -EBADF; 1481 1481 goto out_drop_write; 1482 1482 } 1483 + 1483 1484 src = src_file->f_dentry->d_inode; 1484 1485 1485 1486 ret = -EINVAL; 1486 1487 if (src == inode) 1488 + goto out_fput; 1489 + 1490 + /* the src must be open for reading */ 1491 + if (!(src_file->f_mode & FMODE_READ)) 1487 1492 goto out_fput; 1488 1493 1489 1494 ret = -EISDIR;