[Bug 250360] [tcp] connections should be closed if a same packet without FIN is received after FIN received
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Sat Feb 20 21:26:12 UTC 2021
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=250360
Michael Tuexen <tuexen at freebsd.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|New |Closed
Resolution|--- |Works As Intended
--- Comment #1 from Michael Tuexen <tuexen at freebsd.org> ---
According to RFC 793, page 75, the segment text is ignored in the CLOSE-WAIT
state.
No state change should happen, the missing FIN bit is ignored.
The following packetdrill script shows the behaviour, which is in tune with RFC
793:
0.000 socket(..., SOCK_STREAM, IPPROTO_TCP) = 3
+0.000 fcntl(3, F_GETFL) = 0x2 (flags O_RDWR)
+0.000 fcntl(3, F_SETFL, O_RDWR|O_NONBLOCK) = 0
+0.000 connect(3, ..., ...) = -1 EINPROGRESS (Operation now in progress)
+0.000 > S 0:0(0) win 65535 <mss 1460,nop,wscale 6,sackOK,TS
val 100 ecr 0>
+0.050 < S. 0:0(0) ack 1 win 65535 <mss 1460,sackOK,eol,eol>
+0.000 > . 1:1(0) ack 1 win 65535
+0.050 < F. 1:513(512) ack 1 win 65535
+0.000 > . 1:1(0) ack 514 win 65188
+0.000 recv(3, ..., 256, 0) = 256
+0.050 < . 1:1025(1024) ack 1 win 65535
+0.000 > . 1:1(0) ack 514 win 65444 <nop,nop,sack 1:514>
+0.000 recv(3, ..., 1024, 0) = 256
+0.000 send(3, ..., 512, 0) = 512
+0.000 > P. 1:513(512) ack 514 win 65535
+0.000 < . 514:514(0) ack 513 win 65535
+0.000 close(3) = 0
+0.000 > F. 513:513(0) ack 514 win 65535
+0.000 < . 514:514(0) ack 514 win 65535
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the freebsd-net
mailing list