]>
Commit | Line | Data |
---|---|---|
68184a5a JR |
1 | From 04a60da13369fef6ea11919a9b34f05bdbd3b444 Mon Sep 17 00:00:00 2001 |
2 | From: Miklos Szeredi <mszeredi@suse.cz> | |
3 | Date: Thu, 30 Aug 2012 16:13:51 +0200 | |
4 | Subject: [PATCH 11/13] vfs: export __inode_permission() to modules | |
5 | Patch-mainline: not yet | |
6 | ||
7 | We need to be able to check inode permissions (but not filesystem implied | |
8 | permissions) for stackable filesystems. Expose this interface for overlayfs. | |
9 | ||
10 | Signed-off-by: Miklos Szeredi <mszeredi@suse.cz> | |
11 | --- | |
12 | fs/internal.h | 5 ----- | |
13 | fs/namei.c | 1 + | |
14 | include/linux/fs.h | 1 + | |
15 | 3 files changed, 2 insertions(+), 5 deletions(-) | |
16 | ||
17 | Index: linux-3.6-rc7-master/fs/internal.h | |
18 | =================================================================== | |
19 | --- linux-3.6-rc7-master.orig/fs/internal.h 2012-09-24 03:10:57.000000000 +0200 | |
20 | +++ linux-3.6-rc7-master/fs/internal.h 2012-09-28 13:37:06.000000000 +0200 | |
21 | @@ -42,11 +42,6 @@ static inline int __sync_blockdev(struct | |
22 | extern void __init chrdev_init(void); | |
23 | ||
24 | /* | |
25 | - * namei.c | |
26 | - */ | |
27 | -extern int __inode_permission(struct inode *, int); | |
28 | - | |
29 | -/* | |
30 | * namespace.c | |
31 | */ | |
32 | extern int copy_mount_options(const void __user *, unsigned long *); | |
33 | Index: linux-3.6-rc7-master/fs/namei.c | |
34 | =================================================================== | |
35 | --- linux-3.6-rc7-master.orig/fs/namei.c 2012-09-28 13:36:47.000000000 +0200 | |
36 | +++ linux-3.6-rc7-master/fs/namei.c 2012-09-28 13:37:06.000000000 +0200 | |
37 | @@ -348,6 +348,7 @@ int __inode_permission(struct inode *ino | |
38 | ||
39 | return security_inode_permission(inode, mask); | |
40 | } | |
41 | +EXPORT_SYMBOL(__inode_permission); | |
42 | ||
43 | /** | |
44 | * sb_permission - Check superblock-level permissions | |
45 | Index: linux-3.6-rc7-master/include/linux/fs.h | |
46 | =================================================================== | |
47 | --- linux-3.6-rc7-master.orig/include/linux/fs.h 2012-09-28 13:37:00.000000000 +0200 | |
48 | +++ linux-3.6-rc7-master/include/linux/fs.h 2012-09-28 13:37:06.000000000 +0200 | |
49 | @@ -2427,6 +2427,7 @@ extern sector_t bmap(struct inode *, sec | |
50 | #endif | |
51 | extern int notify_change(struct dentry *, struct iattr *); | |
52 | extern int inode_permission(struct inode *, int); | |
53 | +extern int __inode_permission(struct inode *, int); | |
54 | extern int generic_permission(struct inode *, int); | |
55 | ||
56 | static inline bool execute_ok(struct inode *inode) |