From: Jeremy Harris Date: Sun, 26 May 2019 13:03:00 +0000 (+0100) Subject: Testsuite: workaround TFO blackhole detection X-Git-Url: https://git.exim.org/users/jgh/exim.git/commitdiff_plain/38da9088282b3a74ddcbfe8d60382b55a7e9f426 Testsuite: workaround TFO blackhole detection --- diff --git a/test/scripts/1990-TCP-Fast-Open/1990 b/test/scripts/1990-TCP-Fast-Open/1990 index ec8e32c8f..953098f31 100644 --- a/test/scripts/1990-TCP-Fast-Open/1990 +++ b/test/scripts/1990-TCP-Fast-Open/1990 @@ -26,6 +26,15 @@ sudo perl system ("tc qdisc add dev lo root netem delay 50ms"); **** # +# +# Disable the TFO blackhole detection, as we seem to be running foul of it. +# If bitten, we see the expected EINPROGRESS for sendto, yet no TFO cookie +# option on the SYN. +# +sudo perl +system ("echo 0 > /proc/sys/net/ipv4/tcp_fastopen_blackhole_timeout_sec"); +**** +# # First time runs will see a TFO request option only; subsequent # ones should see the TFO cookie and fast-output SMTP banner # (currently on a separate packet after the server SYN,ACK but before @@ -66,6 +75,7 @@ sleep 3 # sudo perl system ("tc qdisc delete dev lo root"); +system ("echo 3600 > /proc/sys/net/ipv4/tcp_fastopen_blackhole_timeout_sec"); **** # killdaemon diff --git a/test/scripts/4027-TFO-socks/4027 b/test/scripts/4027-TFO-socks/4027 index 3cfb43ee4..44d177ac5 100644 --- a/test/scripts/4027-TFO-socks/4027 +++ b/test/scripts/4027-TFO-socks/4027 @@ -3,11 +3,14 @@ munge loopback # # -# TFO both clients and server, no cookie yet +# Wipe any stored TFO cookie, to start from known state. +# Disable TFO blackhole-detection as we seem to be running afoul of that sudo perl system ("ip tcp_metrics delete 127.0.0.1"); +system ("echo 0 > /proc/sys/net/ipv4/tcp_fastopen_blackhole_timeout_sec"); **** # +# TFO both clients and server, no cookie yet server -tfo PORT_D <<\x05\x01\x00 >>\x05\x00 @@ -123,4 +126,8 @@ quit # millisleep 500 # +sudo perl +system ("echo 3600 > /proc/sys/net/ipv4/tcp_fastopen_blackhole_timeout_sec"); +**** +# # Ends diff --git a/test/scripts/4058-pipe-conn-tfo/4058 b/test/scripts/4058-pipe-conn-tfo/4058 index 3a388a2d9..f31ef8d1c 100644 --- a/test/scripts/4058-pipe-conn-tfo/4058 +++ b/test/scripts/4058-pipe-conn-tfo/4058 @@ -2,13 +2,12 @@ # # # Packet delays so we can see TFO operational in packet captures -sudo perl -system ("tc qdisc add dev lo root netem delay 50ms"); -**** -# # Wipe any stored TFO cookie, to start from known state. +# Disable TFO blackhole-detection as we seem to be running afoul of that sudo perl +system ("tc qdisc add dev lo root netem delay 50ms"); system ("ip tcp_metrics delete 127.0.0.1"); +system ("echo 0 > /proc/sys/net/ipv4/tcp_fastopen_blackhole_timeout_sec"); **** # # @@ -73,6 +72,7 @@ killdaemon # sudo perl system ("tc qdisc delete dev lo root"); +system ("echo 3600 > /proc/sys/net/ipv4/tcp_fastopen_blackhole_timeout_sec"); **** # no_msglog_check