Patch 1 & 3 refine weird TFO fallback behaviours that I found while importing TFO client packetdrill tests from google/packetdrill on GitHub. Patch 2 & 4 import packetdrill tests to cover Patch 1 & 3 scenarios respectively. For the imported tests, these common changes are applied: * Add SPDX header * Adjust path to default.sh * Adjust sysctl w/ set_sysctls.py * Use SOCK_NONBLOCK for socket() instead of fcntl() * Remove unnecessary delay (e.g. +.17 socket(...), etc) Kuniyuki Iwashima (4): tcp: Make TFO client fallback behaviour consistent. selftest: packetdrill: Import TFO sendto tests. tcp: Don't acknowledge SYN+ACK payload to TFO fallback client. selftest: packetdrill: Import client_synack-data.pkt. net/ipv4/tcp_input.c | 17 +- net/ipv4/tcp_output.c | 39 ++--- ...en_client_nonblocking-sendto-empty-buf.pkt | 45 ++++++ ...topen_client_nonblocking-sendto-errnos.pkt | 125 +++++++++++++++ .../tcp_fastopen_client_synack-data.pkt | 150 ++++++++++++++++++ 5 files changed, 350 insertions(+), 26 deletions(-) create mode 100644 tools/testing/selftests/net/packetdrill/tcp_fastopen_client_nonblocking-sendto-empty-buf.pkt create mode 100644 tools/testing/selftests/net/packetdrill/tcp_fastopen_client_nonblocking-sendto-errnos.pkt create mode 100644 tools/testing/selftests/net/packetdrill/tcp_fastopen_client_synack-data.pkt -- 2.51.0.788.g6d19910ace-goog
