Date: Sun, 19 Mar 2017 18:03:30 +0000 From: bugzilla-noreply@freebsd.org To: freebsd-net@FreeBSD.org Subject: [Bug 217637] One TCP connection accepted TWO times Message-ID: <bug-217637-2472-dizI4qEFdz@https.bugs.freebsd.org/bugzilla/> In-Reply-To: <bug-217637-2472@https.bugs.freebsd.org/bugzilla/> References: <bug-217637-2472@https.bugs.freebsd.org/bugzilla/>
next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D217637 --- Comment #34 from slw@zxy.spb.ru --- (In reply to Michael Tuexen from comment #33) Right, FIN_WAIT_1. > Then the state is FIN-WAIT-1. Then it receives the second part of the req= uest. Since the socket is closed, it responds with a RST segment and moves = the connection to CLOSED. I am don't understund this. CLOSING must be only after got FIN. FIN don't received, data in buffer don't ack, what reasson to CLOSING transition and lost data? I mean resend response and FIN again. "If a socket structure is associated with the file structure, soclose is called, f_data is cleared, and any posted error is returned.=20 soclose Function This function aborts any connections that are pending on the socket (i.e., = that have not yet been accepted by a process), waits for data to be transmitted to the foreign sys= tem, and releases the data structures that are no longer needed. soclose is shown in Figure 15.39." "In general, TCP must still process incoming data, so it calls tcpacked to handle incoming acknowledgements, tcpdata to process data in the segment, and tcpswindow to adjust its sending window size. Once= the input has been processed, tcpfin1 checks to see if it should make a state transition. If the TCBF_RDONE bit is set, a FIN has arrived and so has all = data in the sequence up to the FIN. If the TCPF_FIN bit is cleared, an ACK has arrived for the outgoing FIN. Tcpfin1 uses these two bits to determine whet= her to make a transition to the CLOSING, FINWAIT2, or TIMEWAIT states" --=20 You are receiving this mail because: You are the assignee for the bug.=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-217637-2472-dizI4qEFdz>