[RFC 04/10] Temporary struct vfs_lookup in file_permission

Andreas Gruenbacher
2007-08-08T17:20:13Z

[-- Attachment #1: file_permission.diff --]
[-- Type: text/plain, Size: 812 bytes --]

Create a temporary struct vfs_lookup in file_permission() instead of
passing a NULL value.

Signed-off-by: Andreas Gruenbacher <ag@bestbits.at>

---
fs/namei.c | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)

--- a/fs/namei.c
+++ b/fs/namei.c
@@ -292,14 +292,15 @@ int vfs_permission(struct vfs_lookup *lo
*
* Used to check for read/write/execute permissions on an already opened
* file.
- *
- * Note:
- * Do not use this function in new code. All access checks should
- * be done using vfs_permission().
*/
int file_permission(struct file *file, int mask)
{
- return permission(file->f_path.dentry->d_inode, mask, NULL);
+ struct vfs_lookup lookup;
+
+ lookup.path = file->f_path;
+ lookup.flags = 0;
+
+ return permission(file->f_path.dentry->d_inode, mask, &lookup);
}

/*