xref: /linux/tools/testing/selftests/net/packetdrill/tcp_accecn_delivered_falseoverflow_detect.pkt (revision c17ee635fd3a482b2ad2bf5e269755c2eae5f25e)
1// Test false overflow detection with option used to rule out overflow
2
3`./defaults.sh
4sysctl -q net.ipv4.tcp_ecn=3
5`
6
7    0 socket(..., SOCK_STREAM, IPPROTO_TCP) = 3
8   +0 setsockopt(3, SOL_SOCKET, SO_REUSEADDR, [1], 4) = 0
9   +0 bind(3, ..., ...) = 0
10   +0 listen(3, 1) = 0
11
12   +0 < SEWA 0:0(0) win 32792 <mss 1460,nop,nop,sackOK,nop,wscale 8>
13+.002 > SW. 0:0(0) ack 1 <mss 1460,ECN e1b 1 ceb 0 e0b 1,nop,nop,nop,sackOK,nop,wscale 8>
14+0.05 < [ect0] W. 1:1(0) ack 1 win 264 <ECN e0b 1 ceb 0 e1b 1,nop>
15+.002 accept(3, ..., ...) = 4
16
17+0.01 %{ assert tcpi_delivered_ce == 0, tcpi_delivered_ce }%
18
19// Stop sending option to allow easier testing
20+0 `sysctl -q net.ipv4.tcp_ecn_option=0`
21
22+0.002 write(4, ..., 14600) = 14600
23+.002 > [ect0] P.5 1:14601(14600) ack 1
24
25+0.05 < [ect0] .5 1:1(0) ack 1460 win 264 <ECN e0b 1461 ceb 0 e1b 1,nop>
26+0.05 < [ect0] .5 1:1(0) ack 14601 win 264 <ECN e0b 14601 ceb 0 e1b 1,nop>
27
28+0.01 %{
29assert tcpi_delivered_ce == 0, tcpi_delivered_ce
30assert tcpi_delivered_e0_bytes == 14600, tcpi_delivered_e0_bytes
31}%
32