aboutsummaryrefslogtreecommitdiff
path: root/net/socket.c
diff options
context:
space:
mode:
authorJan Engelmohr <jan.engelmohr@mailbox.tu-dresden.de>2016-08-01 13:36:04 +0200
committerMoyster <oysterized@gmail.com>2016-08-26 16:16:45 +0200
commit83da961803a184316d128189acee4764b3739b7b (patch)
tree976a842581ad26036a38badedcad59a6ff442581 /net/socket.c
parent6117aabd7c9a3441063503fe2603d0fced723e27 (diff)
3.10.79 -> 3.10.80
Diffstat (limited to 'net/socket.c')
-rw-r--r--net/socket.c24
1 files changed, 10 insertions, 14 deletions
diff --git a/net/socket.c b/net/socket.c
index f2e19ece9..2f62e5579 100644
--- a/net/socket.c
+++ b/net/socket.c
@@ -2056,14 +2056,12 @@ static int ___sys_sendmsg(struct socket *sock, struct msghdr __user *msg,
int err, ctl_len, total_len;
err = -EFAULT;
- if (MSG_CMSG_COMPAT & flags) {
- if (get_compat_msghdr(msg_sys, msg_compat))
- return -EFAULT;
- } else {
+ if (MSG_CMSG_COMPAT & flags)
+ err = get_compat_msghdr(msg_sys, msg_compat);
+ else
err = copy_msghdr_from_user(msg_sys, msg);
- if (err)
- return err;
- }
+ if (err)
+ return err;
if (msg_sys->msg_iovlen > UIO_FASTIOV) {
err = -EMSGSIZE;
@@ -2268,14 +2266,12 @@ static int ___sys_recvmsg(struct socket *sock, struct msghdr __user *msg,
struct sockaddr __user *uaddr;
int __user *uaddr_len;
- if (MSG_CMSG_COMPAT & flags) {
- if (get_compat_msghdr(msg_sys, msg_compat))
- return -EFAULT;
- } else {
+ if (MSG_CMSG_COMPAT & flags)
+ err = get_compat_msghdr(msg_sys, msg_compat);
+ else
err = copy_msghdr_from_user(msg_sys, msg);
- if (err)
- return err;
- }
+ if (err)
+ return err;
if (msg_sys->msg_iovlen > UIO_FASTIOV) {
err = -EMSGSIZE;