Merge branch 'master' into 4.next
[users/jgh/exim.git] / test / scripts / 1990-TCP-Fast-Open / 1990
1 # TCP Fast Open
2 #
3 # Linux:
4 # Both server and client-side TFO support must be enabled in the
5 # kernel, 'sudo sh -c "echo 3 > /proc/sys/net/ipv4/tcp_fastopen"'.
6 #
7 # A packet capture on the loopback interface will show the TFO
8 # option on the SYN, but the fast-output SMTP banner will not
9 # be seen unless you also deliberately emulate a long path:
10 # 'sudo tc qdisc add dev lo root netem delay 100ms'
11 #
12 # First time runs will see a TFO request option only; subsequent
13 # ones should see the TFO cookie and fast-output SMTP banner
14 # (currently on a separate packet after the server SYN,ACK but before
15 # the client ACK).
16 #
17 # The client log => lint.ex  should have a "TFO" element.
18 # Assuming this is the first run since boot, the a@test recipient will not.
19 #
20 # The server log <= line for b@test.ex  should have a "TFO" element, but
21 # this will only be obtained when the above delay is inserted into the
22 # loopback net path.
23 #
24 #
25 #
26 # FreeBSD: it looks like you have to compile a custom kernel, with
27 # 'options TCP_RFC7413' in the config.  Also set
28 # 'net.inet.tcp.fastopen.enabled=1' in /etc/sysctl.conf
29 # Untested.
30 #
31 exim -DSERVER=server -bd -oX PORT_D
32 ****
33 #
34 exim a@test.ex
35 Testing
36 ****
37 sleep 3
38 #
39 exim b@test.ex
40 Testing
41 ****
42 sleep 3
43 #
44 killdaemon
45 no_msglog_check