lwIP - A Lightweight TCP/IP stack - Bugs: bug #35435, No pcb state check before adding...
You are not allowed to post comments on this tracker with your current authentication level.
bug #35435: No pcb state check before adding it to time-wait queue while closing
Submitter: | Yosic <yosic> | ||
Submitted: | Thu 02 Feb 2012 12:24:58 PM UTC | ||
Category: | TCP | Severity: | 3 - Normal |
Item Group: | Faulty Behaviour | Status: | Fixed |
Privacy: | Public | Assigned to: | goldsimon |
Open/Closed: | Closed | Planned Release: | None |
lwIP version: | CVS Head |
Sat 11 Feb 2012 05:16:10 PM UTC, comment #4: |
Simon Goldschmidt <goldsimon> |
Mon 06 Feb 2012 08:37:59 AM UTC, comment #3: Kieran, your comment is correct, but there's a bug in the code that sends RST if not all received data is processed by the application when close is called. In that state, TIME_WAIT is entered without a check. I'll fix that. |
Simon Goldschmidt <goldsimon> |
Mon 06 Feb 2012 07:18:15 AM UTC, comment #2: May be it is so. But any way it is. I don't know the origin of the problem but in the function I mentioned an attempt to add pcb to time-wait queue is made. May be it is required some other sort of check not to get to this function at all. But as for now it tries to put pcb into time-wait queue twice. I tested it on the head.
|
Yosic <yosic> |
Sat 04 Feb 2012 03:41:50 PM UTC, comment #1: But a pcb that hasn't been closed shouldn't already be in time_wait. It would be in close_wait. |
Kieran Mansley <kieranm> |
Thu 02 Feb 2012 12:24:58 PM UTC, original submission:
tcp.c function tcp_close_shutdown.
|
Yosic <yosic> |
No files currently attached
Depends on the following items: None found
Items that depend on this one: None found
There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.
Follow 5 latest changes.
Date | Changed by | Updated Field | Previous Value | => | Replaced by |
---|---|---|---|---|---|
2012-02-11 | goldsimon | Status | In Progress | Fixed | |
Open/Closed | Open | Closed | |||
2012-02-06 | goldsimon | Status | None | In Progress | |
Assigned to | None | goldsimon | |||
Planned Release | 1.4.1 |
Powered by Savane 3.13-caa5.
Corresponding source code
Fixed by only sending RST from ESTABLISHED or CLOSE_WAIT, moving to TIME_WAIT only from ESTABLISHED and deallocating the pcb from CLOSE_WAIT (since we sent a RST).