aboutsummaryrefslogtreecommitdiffstats
path: root/fs/reiserfs/ioctl.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/reiserfs/ioctl.c')
-rw-r--r--fs/reiserfs/ioctl.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/fs/reiserfs/ioctl.c b/fs/reiserfs/ioctl.c
index b484d2913c0..11a0fcc2d40 100644
--- a/fs/reiserfs/ioctl.c
+++ b/fs/reiserfs/ioctl.c
@@ -51,8 +51,7 @@ int reiserfs_ioctl(struct inode *inode, struct file *filp, unsigned int cmd,
51 if (IS_RDONLY(inode)) 51 if (IS_RDONLY(inode))
52 return -EROFS; 52 return -EROFS;
53 53
54 if ((current->fsuid != inode->i_uid) 54 if (!is_owner_or_cap(inode))
55 && !capable(CAP_FOWNER))
56 return -EPERM; 55 return -EPERM;
57 56
58 if (get_user(flags, (int __user *)arg)) 57 if (get_user(flags, (int __user *)arg))
@@ -81,7 +80,7 @@ int reiserfs_ioctl(struct inode *inode, struct file *filp, unsigned int cmd,
81 case REISERFS_IOC_GETVERSION: 80 case REISERFS_IOC_GETVERSION:
82 return put_user(inode->i_generation, (int __user *)arg); 81 return put_user(inode->i_generation, (int __user *)arg);
83 case REISERFS_IOC_SETVERSION: 82 case REISERFS_IOC_SETVERSION:
84 if ((current->fsuid != inode->i_uid) && !capable(CAP_FOWNER)) 83 if (!is_owner_or_cap(inode))
85 return -EPERM; 84 return -EPERM;
86 if (IS_RDONLY(inode)) 85 if (IS_RDONLY(inode))
87 return -EROFS; 86 return -EROFS;