summaryrefslogtreecommitdiffstats
path: root/security
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2011-06-21 01:44:08 +0200
committerAl Viro <viro@zeniv.linux.org.uk>2011-07-20 07:43:27 +0200
commitcf1dd1dae851ce5765cda5de16aa965eef7c2dbf (patch)
tree5ee564e56eca307701ce155e30a2cbb05b9937e3 /security
parent->permission() sanitizing: don't pass flags to ->inode_permission() (diff)
downloadlinux-cf1dd1dae851ce5765cda5de16aa965eef7c2dbf.tar.xz
linux-cf1dd1dae851ce5765cda5de16aa965eef7c2dbf.zip
selinux: don't transliterate MAY_NOT_BLOCK to IPERM_FLAG_RCU
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'security')
-rw-r--r--security/selinux/avc.c2
-rw-r--r--security/selinux/hooks.c4
2 files changed, 3 insertions, 3 deletions
diff --git a/security/selinux/avc.c b/security/selinux/avc.c
index d515b2128a4e..dca1c22d9276 100644
--- a/security/selinux/avc.c
+++ b/security/selinux/avc.c
@@ -527,7 +527,7 @@ int avc_audit(u32 ssid, u32 tsid,
* happened a little later.
*/
if ((a->type == LSM_AUDIT_DATA_INODE) &&
- (flags & IPERM_FLAG_RCU))
+ (flags & MAY_NOT_BLOCK))
return -ECHILD;
a->selinux_audit_data.tclass = tclass;
diff --git a/security/selinux/hooks.c b/security/selinux/hooks.c
index 47a059fff344..eb5d5cdf3c51 100644
--- a/security/selinux/hooks.c
+++ b/security/selinux/hooks.c
@@ -2665,7 +2665,7 @@ static int selinux_inode_permission(struct inode *inode, int mask)
struct common_audit_data ad;
u32 perms;
bool from_access;
- unsigned __flags = mask & MAY_NOT_BLOCK ? IPERM_FLAG_RCU : 0;
+ unsigned flags = mask & MAY_NOT_BLOCK;
from_access = mask & MAY_ACCESS;
mask &= (MAY_READ|MAY_WRITE|MAY_EXEC|MAY_APPEND);
@@ -2682,7 +2682,7 @@ static int selinux_inode_permission(struct inode *inode, int mask)
perms = file_mask_to_av(inode->i_mode, mask);
- return inode_has_perm(cred, inode, perms, &ad, __flags);
+ return inode_has_perm(cred, inode, perms, &ad, flags);
}
static int selinux_inode_setattr(struct dentry *dentry, struct iattr *iattr)