diff options
author | tadeusz.struk@intel.com <tadeusz.struk@intel.com> | 2015-12-15 19:46:17 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-12-15 21:46:48 +0100 |
commit | 130ed5d105dde141e7fe60d5440aa53e0a84f13b (patch) | |
tree | 0f79eb596cd5c9f333883620f2fce3e73a67a1ee /net | |
parent | bluetooth: Validate socket address length in sco_sock_bind(). (diff) | |
download | linux-130ed5d105dde141e7fe60d5440aa53e0a84f13b.tar.xz linux-130ed5d105dde141e7fe60d5440aa53e0a84f13b.zip |
net: fix uninitialized variable issue
msg_iocb needs to be initialized on the recv/recvfrom path.
Otherwise afalg will wrongly interpret it as an async call.
Cc: stable@vger.kernel.org
Reported-by: Harald Freudenberger <freude@linux.vnet.ibm.com>
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net')
-rw-r--r-- | net/socket.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/net/socket.c b/net/socket.c index 456fadb3d819..29822d6dd91e 100644 --- a/net/socket.c +++ b/net/socket.c @@ -1695,6 +1695,7 @@ SYSCALL_DEFINE6(recvfrom, int, fd, void __user *, ubuf, size_t, size, msg.msg_name = addr ? (struct sockaddr *)&address : NULL; /* We assume all kernel code knows the size of sockaddr_storage */ msg.msg_namelen = 0; + msg.msg_iocb = NULL; if (sock->file->f_flags & O_NONBLOCK) flags |= MSG_DONTWAIT; err = sock_recvmsg(sock, &msg, iov_iter_count(&msg.msg_iter), flags); |