]> git.baikalelectronics.ru Git - kernel.git/commit
mptcp: avoid OOB access in setsockopt()
authorPaolo Abeni <pabeni@redhat.com>
Tue, 25 May 2021 21:23:10 +0000 (14:23 -0700)
committerDavid S. Miller <davem@davemloft.net>
Tue, 25 May 2021 22:56:20 +0000 (15:56 -0700)
commitff033eabcf9bb872ea9b13086ae78547cc884f98
tree1e4608d2155e141f7edfd383e65e9e4462f087f8
parentcf25996c596fd6bd3fe01e9ed85d248c24e03a07
mptcp: avoid OOB access in setsockopt()

We can't use tcp_set_congestion_control() on an mptcp socket, as
such function can end-up accessing a tcp-specific field -
prior_ssthresh - causing an OOB access.

To allow propagating the correct ca algo on subflow, cache the ca
name at initialization time.

Additionally avoid overriding the user-selected CA (if any) at
clone time.

Closes: https://github.com/multipath-tcp/mptcp_net-next/issues/182
Fixes: 6ac9686a978f ("mptcp: sockopt: add TCP_CONGESTION and TCP_INFO")
Acked-by: Florian Westphal <fw@strlen.de>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: Mat Martineau <mathew.j.martineau@linux.intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/mptcp/protocol.c
net/mptcp/protocol.h
net/mptcp/sockopt.c