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
#
sudo perl
system ("tc qdisc delete dev lo root");
+system ("echo 3600 > /proc/sys/net/ipv4/tcp_fastopen_blackhole_timeout_sec");
****
#
killdaemon
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
#
millisleep 500
#
+sudo perl
+system ("echo 3600 > /proc/sys/net/ipv4/tcp_fastopen_blackhole_timeout_sec");
+****
+#
# Ends
#
#
# 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");
****
#
#
#
sudo perl
system ("tc qdisc delete dev lo root");
+system ("echo 3600 > /proc/sys/net/ipv4/tcp_fastopen_blackhole_timeout_sec");
****
#
no_msglog_check