]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
tcp: add sysctl to tolerate TCP segments missing timestamps
authorMichael Tuexen <tuexen@FreeBSD.org>
Wed, 13 Jan 2021 21:48:17 +0000 (22:48 +0100)
committerMichael Tuexen <tuexen@FreeBSD.org>
Thu, 14 Jan 2021 18:28:25 +0000 (19:28 +0100)
commitd2b3ceddccac60b563f642898e3a314647666a10
treec364fb4d552610a239467e2710ccd9c85abb6b0d
parent54c743e5b29163cb0ee8504b8fb947db5c38497c
tcp: add sysctl to tolerate TCP segments missing timestamps

When timestamp support has been negotiated, TCP segements received
without a timestamp should be discarded. However, there are broken
TCP implementations (for example, stacks used by Omniswitch 63xx and
64xx models), which send TCP segments without timestamps although
they negotiated timestamp support.
This patch adds a sysctl variable which tolerates such TCP segments
and allows to interoperate with broken stacks.

Reviewed by: jtl@, rscheff@
Differential Revision: https://reviews.freebsd.org/D28142
Sponsored by: Netflix, Inc.
PR: 252449
MFC after: 1 week
share/man/man4/tcp.4
sys/netinet/tcp_input.c
sys/netinet/tcp_stacks/bbr.c
sys/netinet/tcp_stacks/rack.c
sys/netinet/tcp_subr.c
sys/netinet/tcp_syncache.c
sys/netinet/tcp_timewait.c
sys/netinet/tcp_var.h