xfs: add capability check to free eofblocks ioctl
authorDwight Engen <dwight.engen@oracle.com>
Thu, 15 Aug 2013 18:08:03 +0000 (14:08 -0400)
committerBen Myers <bpm@sgi.com>
Thu, 15 Aug 2013 19:25:01 +0000 (14:25 -0500)
commit8c567a7fab6e086a0284eee2db82348521e7120c
treed76cf8cae0c26e5981a9cf5534b596394207eaf0
parentb9fe505258375b98519493a41a8088e384965aa9
xfs: add capability check to free eofblocks ioctl

Check for CAP_SYS_ADMIN since the caller can truncate preallocated
blocks from files they do not own nor have write access to. A more
fine grained access check was considered: require the caller to
specify their own uid/gid and to use inode_permission to check for
write, but this would not catch the case of an inode not reachable
via path traversal from the callers mount namespace.

Add check for read-only filesystem to free eofblocks ioctl.

Reviewed-by: Brian Foster <bfoster@redhat.com>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Gao feng <gaofeng@cn.fujitsu.com>
Signed-off-by: Dwight Engen <dwight.engen@oracle.com>
Signed-off-by: Ben Myers <bpm@sgi.com>
fs/xfs/xfs_ioctl.c