summaryrefslogtreecommitdiff
path: root/net/socket.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@kernel.org>2016-11-22 12:37:38 +0100
committerIngo Molnar <mingo@kernel.org>2016-11-22 12:37:38 +0100
commit02cb689b2c102178c83e763e4f34b3efe7f969e2 (patch)
treecba7eb3f16487cef5dc4a2690686b1e2eb42af0c /net/socket.c
parent194a6b5b9cb6b91a5f7d86984165a3bc55188599 (diff)
parent3b404a519815b9820f73f1ecf404e5546c9270ba (diff)
Merge branch 'linus' into locking/core, to pick up fixes
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'net/socket.c')
-rw-r--r--net/socket.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/net/socket.c b/net/socket.c
index 5a9bf5ee2464..73dc69f9681e 100644
--- a/net/socket.c
+++ b/net/socket.c
@@ -341,8 +341,23 @@ static const struct xattr_handler sockfs_xattr_handler = {
.get = sockfs_xattr_get,
};
+static int sockfs_security_xattr_set(const struct xattr_handler *handler,
+ struct dentry *dentry, struct inode *inode,
+ const char *suffix, const void *value,
+ size_t size, int flags)
+{
+ /* Handled by LSM. */
+ return -EAGAIN;
+}
+
+static const struct xattr_handler sockfs_security_xattr_handler = {
+ .prefix = XATTR_SECURITY_PREFIX,
+ .set = sockfs_security_xattr_set,
+};
+
static const struct xattr_handler *sockfs_xattr_handlers[] = {
&sockfs_xattr_handler,
+ &sockfs_security_xattr_handler,
NULL
};
@@ -2038,6 +2053,8 @@ int __sys_sendmmsg(int fd, struct mmsghdr __user *mmsg, unsigned int vlen,
if (err)
break;
++datagrams;
+ if (msg_data_left(&msg_sys))
+ break;
cond_resched();
}