[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[lwip-devel] Out of order FINs, was Re: [bug #26267] Simultaneous close

From: Kieran Mansley
Subject: [lwip-devel] Out of order FINs, was Re: [bug #26267] Simultaneous close
Date: Wed, 22 Apr 2009 14:28:25 +0100

On Wed, 2009-04-22 at 12:26 +0000, Oleg Tyshev wrote:
> Follow-up Comment #14, bug #26267 (project lwip):
> Exists one more issue with close of the connection.
> FIN could be inserted to out of sequence queue.
> If we want to support later shutdown() for sockets,
> FIN should be accepted for transition to other TCP states only if it was
> accepted in sequence.
> Now tcp_receive() returns true for any segment that was received in sequence,
> we could change it.
> The function can return true if it was received FIN in sequence (in current
> packet or as result of filling gap in out of sequence queue)

Replying to lwip-devel as it's a different issue to that bug.

This was raised yesterday in an email to lwip-devel by Ben Hastings
("Out of order segments in half close"), and I hope he'll file a bug to
track it.  You're right that we need a measure from tcp_receive() in the
case of a FIN to tell if the FIN has been received in sequence, or if it
is still queued - just looking at the return from tcp_receive() won't be
enough in that case.  Perhaps we could compare rcv_nxt after calling
tcp_receive() to the sequence number of the FIN?


reply via email to

[Prev in Thread] Current Thread [Next in Thread]