From: Alexander Potapenko Date: Wed, 8 Mar 2017 17:08:16 +0000 (+0100) Subject: net: initialize msg.msg_flags in recvfrom X-Git-Tag: Ubuntu-snapdragon-4.4.0-1088.93~1125 X-Git-Url: https://git.proxmox.com/?a=commitdiff_plain;h=667d348a65fe29123564b9cb96f81c0040521955;p=mirror_ubuntu-artful-kernel.git net: initialize msg.msg_flags in recvfrom BugLink: http://bugs.launchpad.net/bugs/1745052 [ Upstream commit 9f138fa609c47403374a862a08a41394be53d461 ] KMSAN reports a use of uninitialized memory in put_cmsg() because msg.msg_flags in recvfrom haven't been initialized properly. The flag values don't affect the result on this path, but it's still a good idea to initialize them explicitly. Signed-off-by: Alexander Potapenko Signed-off-by: David S. Miller Signed-off-by: Sasha Levin Signed-off-by: Greg Kroah-Hartman Signed-off-by: Khalid Elmously Signed-off-by: Stefan Bader --- diff --git a/net/socket.c b/net/socket.c index 3cdfd05204fc..a5c43ada9ef8 100644 --- a/net/socket.c +++ b/net/socket.c @@ -1696,6 +1696,7 @@ SYSCALL_DEFINE6(recvfrom, int, fd, void __user *, ubuf, size_t, size, /* We assume all kernel code knows the size of sockaddr_storage */ msg.msg_namelen = 0; msg.msg_iocb = NULL; + msg.msg_flags = 0; if (sock->file->f_flags & O_NONBLOCK) flags |= MSG_DONTWAIT; err = sock_recvmsg(sock, &msg, flags);