HomeFreeBSD

Fix some TCP fast open issues.

Description

Fix some TCP fast open issues.

The following issues are fixed:

  • Whenever a TCP server with TCP fast open enabled, calls accept(), recv(), send(), and close() before the TCP-ACK segment has been received, the TCP connection is just dropped and the reception of the TCP-ACK segment triggers the sending of a TCP-RST segment.
  • Whenever a TCP server with TCP fast open enabled, calls accept(), recv(), send(), send(), and close() before the TCP-ACK segment has been received, the first byte provided in the second send call is not transferred.
  • Whenever a TCP client with TCP fast open enabled calls sendto() followed by close() the TCP connection is just dropped.

Reviewed by: jtl@, kbowling@, rrs@
Sponsored by: Netflix, Inc.
Differential Revision: https://reviews.freebsd.org/D16485

Details

Provenance
tuexenAuthored on
Differential Revision
D16485: Fix some TCP fast open issues
Parents
rS336933: Silence newer gcc warnings.
Branches
Unknown
Tags
Unknown