[PATCH] sanitize ->permission() prototype
* kill nameidata * argument; map the 3 bits in ->flags anybody cares about to new MAY_... ones and pass with the mask. * kill redundant gfs2_iop_permission() * sanitize ecryptfs_permission() * fix remaining places where ->permission() instances might barf on new MAY_... found in mask. The obvious next target in that direction is permission(9) folded fix for nfs_permission() breakage from Miklos Szeredi <mszeredi@suse.cz> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
@@ -830,22 +830,9 @@ out:
|
||||
}
|
||||
|
||||
static int
|
||||
ecryptfs_permission(struct inode *inode, int mask, struct nameidata *nd)
|
||||
ecryptfs_permission(struct inode *inode, int mask)
|
||||
{
|
||||
int rc;
|
||||
|
||||
if (nd) {
|
||||
struct vfsmount *vfsmnt_save = nd->path.mnt;
|
||||
struct dentry *dentry_save = nd->path.dentry;
|
||||
|
||||
nd->path.mnt = ecryptfs_dentry_to_lower_mnt(nd->path.dentry);
|
||||
nd->path.dentry = ecryptfs_dentry_to_lower(nd->path.dentry);
|
||||
rc = permission(ecryptfs_inode_to_lower(inode), mask, nd);
|
||||
nd->path.mnt = vfsmnt_save;
|
||||
nd->path.dentry = dentry_save;
|
||||
} else
|
||||
rc = permission(ecryptfs_inode_to_lower(inode), mask, NULL);
|
||||
return rc;
|
||||
return permission(ecryptfs_inode_to_lower(inode), mask, NULL);
|
||||
}
|
||||
|
||||
/**
|
||||
|
Reference in New Issue
Block a user