Remove XID check that prevents one vserver from reading files created in
authorSteve Muir <smuir@cs.princeton.edu>
Wed, 17 Nov 2004 18:59:31 +0000 (18:59 +0000)
committerSteve Muir <smuir@cs.princeton.edu>
Wed, 17 Nov 2004 18:59:31 +0000 (18:59 +0000)
another vserver but made visible by, say, a bind mount

fs/namei.c

index 17f4081..0929e9b 100644 (file)
@@ -210,20 +210,6 @@ int vfs_permission(struct inode * inode, int mask)
        return -EACCES;
 }
 
-static inline int xid_permission(struct inode *inode, int mask, struct nameidata *nd)
-{
-       if (inode->i_xid == 0)
-               return 0;
-       if (vx_check(inode->i_xid, VX_ADMIN|VX_WATCH|VX_IDENT))
-               return 0;
-/*
-       printk("VSW: xid=%d denied access to %p[#%d,%lu] »%*s«.\n",
-               vx_current_xid(), inode, inode->i_xid, inode->i_ino,
-               nd->dentry->d_name.len, nd->dentry->d_name.name);
-*/
-       return -EACCES;
-}
-
 int permission(struct inode * inode,int mask, struct nameidata *nd)
 {
        int retval;
@@ -237,8 +223,6 @@ int permission(struct inode * inode,int mask, struct nameidata *nd)
                (S_ISREG(mode) || S_ISDIR(mode) || S_ISLNK(mode)))
                return -EROFS;
 
-       if ((retval = xid_permission(inode, mask, nd)))
-               return retval;
        if (inode->i_op && inode->i_op->permission)
                retval = inode->i_op->permission(inode, submask, nd);
        else