]> git.baikalelectronics.ru Git - kernel.git/commit
tcp-zerocopy: Update returned getsockopt() optlen.
authorArjun Roy <arjunroy@google.com>
Tue, 25 Feb 2020 20:38:54 +0000 (12:38 -0800)
committerDavid S. Miller <davem@davemloft.net>
Thu, 27 Feb 2020 04:24:22 +0000 (20:24 -0800)
commit0ab982b6f7815e47782dadae54dd162140ff6e9d
treeb9873f953bf4389af332e307fa55efa8d613f11e
parentfe1ec09bbf26a85c39ed7e66291f1147a3e549f2
tcp-zerocopy: Update returned getsockopt() optlen.

TCP receive zerocopy currently does not update the returned optlen for
getsockopt() if the user passed in a larger than expected value.
Thus, userspace cannot properly determine if all the fields are set in
the passed-in struct. This patch sets the optlen for this case before
returning, in keeping with the expected operation of getsockopt().

Fixes: 87a9d1dbf7eb ("tcp-zerocopy: Return inq along with tcp receive zerocopy.")
Signed-off-by: Arjun Roy <arjunroy@google.com>
Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: Soheil Hassas Yeganeh <soheil@google.com>
Signed-off-by: Willem de Bruijn <willemb@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/tcp.c