Merge branch 'exim-4.96+security' into master+security
[exim.git] / test / scripts / 4058-pipe-conn-tfo / 4058
1 # Early-pipelining, with TFO
2 #
3 # NOTE: ensure that TFO is fully enabled in the kernel.
4 # For linux: sysctl net.ipv4.tcp_fastopen=3
5
6 #
7 # Packet delays so we can see TFO operational in packet captures
8 # Wipe any stored TFO cookie, to start from known state.
9 # Disable TFO blackhole-detection as we seem to be running afoul of that
10 sudo perl
11 system ("tc qdisc add dev lo root netem delay 50ms");
12 system ("ip tcp_metrics delete HOSTIPV4");
13 system ("[ -e /proc/sys/net/ipv4/tcp_fastopen_blackhole_timeout_sec ] && echo 0 > /proc/sys/net/ipv4/tcp_fastopen_blackhole_timeout_sec");
14 ****
15 #
16 #
17 exim -bd -DSERVER=server -oX PORT_D
18 ****
19 #
20 # No early-pipe cache yet.  Run one through to prime it;
21 # this should not use early-pipe despite both the client & server being enabled.
22 # Should also prime the TFO cookie cache.
23 exim nocache@test.ex
24 Subject: tfo test
25
26 Testing
27 ****
28 exim -q
29 ****
30 exim -DNOTDAEMON -DSERVER=server -q
31 ****
32 #
33 #
34 #
35 # Having primed the cache, this one should use it.
36 exim hascache@test.ex
37 Subject: tfo test 2
38
39 Testing
40 ****
41 exim -q
42 ****
43 exim -DNOTDAEMON -DSERVER=server -q
44 ****
45 #
46 #
47 killdaemon
48 #
49 # Again, with CHUNKING
50 sudo rm DIR/spool/db/misc
51 exim -bd -DSERVER=server -DOPT=* -oX PORT_D
52 ****
53 #
54 exim nocache@test.ex
55 Subject: tfo test 3
56
57 Testing
58 ****
59 exim -q
60 ****
61 exim -DNOTDAEMON -DSERVER=server -q
62 ****
63 exim chunking@test.ex
64 Subject: tfo test 4
65
66 Testing
67 ****
68 exim -q
69 ****
70 exim -DNOTDAEMON -DSERVER=server -q
71 ****
72 #
73 #
74 killdaemon
75 #
76 sudo perl
77 system ("tc qdisc delete dev lo root");
78 system ("[ -e /proc/sys/net/ipv4/tcp_fastopen_blackhole_timeout_sec ] && echo 3600 > /proc/sys/net/ipv4/tcp_fastopen_blackhole_timeout_sec");
79 ****
80 #
81 no_msglog_check