]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - fs/reiserfs/xattr_user.c
Linux 2.6.28-rc4
[linux-2.6-omap-h63xx.git] / fs / reiserfs / xattr_user.c
index 51458048ca6623fd0eb825ef6b304b38b3c1940a..1384efcb938e078d882587ee9e84e1de10090bb2 100644 (file)
 # include <linux/reiserfs_acl.h>
 #endif
 
-#define XATTR_USER_PREFIX "user."
-
 static int
 user_get(struct inode *inode, const char *name, void *buffer, size_t size)
 {
 
-       int error;
-
        if (strlen(name) < sizeof(XATTR_USER_PREFIX))
                return -EINVAL;
-
        if (!reiserfs_xattrs_user(inode->i_sb))
                return -EOPNOTSUPP;
-
-       error = reiserfs_permission_locked(inode, MAY_READ, NULL);
-       if (error)
-               return error;
-
        return reiserfs_xattr_get(inode, name, buffer, size);
 }
 
@@ -36,43 +26,21 @@ user_set(struct inode *inode, const char *name, const void *buffer,
         size_t size, int flags)
 {
 
-       int error;
-
        if (strlen(name) < sizeof(XATTR_USER_PREFIX))
                return -EINVAL;
 
        if (!reiserfs_xattrs_user(inode->i_sb))
                return -EOPNOTSUPP;
-
-       if (!S_ISREG(inode->i_mode) &&
-           (!S_ISDIR(inode->i_mode) || inode->i_mode & S_ISVTX))
-               return -EPERM;
-
-       error = reiserfs_permission_locked(inode, MAY_WRITE, NULL);
-       if (error)
-               return error;
-
        return reiserfs_xattr_set(inode, name, buffer, size, flags);
 }
 
 static int user_del(struct inode *inode, const char *name)
 {
-       int error;
-
        if (strlen(name) < sizeof(XATTR_USER_PREFIX))
                return -EINVAL;
 
        if (!reiserfs_xattrs_user(inode->i_sb))
                return -EOPNOTSUPP;
-
-       if (!S_ISREG(inode->i_mode) &&
-           (!S_ISDIR(inode->i_mode) || inode->i_mode & S_ISVTX))
-               return -EPERM;
-
-       error = reiserfs_permission_locked(inode, MAY_WRITE, NULL);
-       if (error)
-               return error;
-
        return 0;
 }