[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20200513165850.GA26121@lst.de>
Date: Wed, 13 May 2020 18:58:50 +0200
From: Christoph Hellwig <hch@....de>
To: Eric Dumazet <eric.dumazet@...il.com>
Cc: Christoph Hellwig <hch@....de>,
"David S. Miller" <davem@...emloft.net>,
Jakub Kicinski <kuba@...nel.org>, netdev@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH 3/3] net: cleanly handle kernel vs user buffers for
->msg_control
On Wed, May 13, 2020 at 09:18:36AM -0700, Eric Dumazet wrote:
> Please try the following syzbot repro, since it crashes after your patch.
Doesn't crash here, but I could totally see why it could depending
in the stack initialization. Please try the patch below - these
msghdr intance were something I missed because they weren't using
any highlevel recvmsg interfaces. I'll do another round of audits
to see if there is anything else.
diff --git a/net/ipv6/ipv6_sockglue.c b/net/ipv6/ipv6_sockglue.c
index 18d05403d3b52..a0e50cc57e545 100644
--- a/net/ipv6/ipv6_sockglue.c
+++ b/net/ipv6/ipv6_sockglue.c
@@ -1075,6 +1075,7 @@ static int do_ipv6_getsockopt(struct sock *sk, int level, int optname,
msg.msg_control = optval;
msg.msg_controllen = len;
msg.msg_flags = flags;
+ msg.msg_control_is_user = true;
lock_sock(sk);
skb = np->pktoptions;
Powered by blists - more mailing lists