]> Cypherpunks repositories - gostls13.git/commit
net: mptcp: fallback to TCP in case of any error
authorMatthieu Baerts <matthieu.baerts@tessares.net>
Fri, 24 Feb 2023 16:51:59 +0000 (17:51 +0100)
committerEmmanuel Odeke <emmanuel@orijtech.com>
Thu, 30 Mar 2023 14:04:36 +0000 (14:04 +0000)
commitdead7887b1a1a06aad8c80592045375401e4aeda
tree6a5cd083fa355e895c59f8bfa9af654918f8e5c2
parentf80e270babcddd28e29a52c1cb834ffed427bd8a
net: mptcp: fallback to TCP in case of any error

Specific MPTCP errors could happen but only one is detectable: if
ENOPROTOOPT errno is returned, it likely means MPTCP has been disable
via this sysctl knob: net.mptcp.enabled.

But because MPTCP could be blocked by the administrator using different
techniques (SELinux, etc.) making the socket creation returning other
errors, it looks better to always retry to create a "plain" TCP socket
when any errors are returned.

This work has been co-developed by Gregory Detal
<gregory.detal@tessares.net>.

Updates #56539

Change-Id: I94fb8448dae351e1d3135b4f182570979c6b36d3
Reviewed-on: https://go-review.googlesource.com/c/go/+/471138
Reviewed-by: Ian Lance Taylor <iant@google.com>
Reviewed-by: Emmanuel Odeke <emmanuel@orijtech.com>
Run-TryBot: Emmanuel Odeke <emmanuel@orijtech.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Matthew Dempsky <mdempsky@google.com>
src/net/mptcpsock_linux.go