summaryrefslogtreecommitdiff
path: root/security/security.c
diff options
context:
space:
mode:
authorSteve French <sfrench@us.ibm.com>2011-01-10 02:18:16 +0300
committerSteve French <sfrench@us.ibm.com>2011-01-10 02:18:16 +0300
commitacc6f11272ce4f77c40b1a6292eb198fd6aaf8c3 (patch)
tree2da3a61b6726707a89f1cf93446aabd2fb00e1f0 /security/security.c
parent7e12eddb73d4f288b0339ee13832a34d6bc4fd90 (diff)
parent0c21e3aaf6ae85bee804a325aa29c325209180fd (diff)
downloadlinux-acc6f11272ce4f77c40b1a6292eb198fd6aaf8c3.tar.xz
Merge branch 'master' of /pub/scm/linux/kernel/git/torvalds/linux-2.6
Conflicts: fs/cifs/dir.c
Diffstat (limited to 'security/security.c')
-rw-r--r--security/security.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/security/security.c b/security/security.c
index 1b798d3df710..739e40362f44 100644
--- a/security/security.c
+++ b/security/security.c
@@ -513,6 +513,15 @@ int security_inode_permission(struct inode *inode, int mask)
return security_ops->inode_permission(inode, mask);
}
+int security_inode_exec_permission(struct inode *inode, unsigned int flags)
+{
+ if (unlikely(IS_PRIVATE(inode)))
+ return 0;
+ if (flags)
+ return -ECHILD;
+ return security_ops->inode_permission(inode, MAY_EXEC);
+}
+
int security_inode_setattr(struct dentry *dentry, struct iattr *attr)
{
if (unlikely(IS_PRIVATE(dentry->d_inode)))
@@ -977,8 +986,7 @@ EXPORT_SYMBOL(security_inode_getsecctx);
#ifdef CONFIG_SECURITY_NETWORK
-int security_unix_stream_connect(struct socket *sock, struct socket *other,
- struct sock *newsk)
+int security_unix_stream_connect(struct sock *sock, struct sock *other, struct sock *newsk)
{
return security_ops->unix_stream_connect(sock, other, newsk);
}