mirror of
https://github.com/lwip-tcpip/lwip.git
synced 2024-12-25 00:14:02 +00:00
Remove PCBs which stay in LAST_ACK state too long.
This commit is contained in:
parent
7571fe5d13
commit
f8663a7129
@ -11,8 +11,12 @@ FUTURE
|
|||||||
|
|
||||||
HISTORY
|
HISTORY
|
||||||
|
|
||||||
|
2005-12-20 Leon Woestenberg <leon.woestenberg@gmx.net>
|
||||||
|
* tcp.c: Remove PCBs which stay in LAST_ACK state too long. Patch
|
||||||
|
submitted by Mitrani Hiroshi.
|
||||||
|
|
||||||
2005-12-15 Christiaan Simons
|
2005-12-15 Christiaan Simons
|
||||||
* inet.c: Standard checksum routine fixed in proper portable C.
|
* inet.c: Disabled the added summing routine to preserve code space.
|
||||||
|
|
||||||
2005-12-14 Leon Woestenberg <leon.woestenberg@gmx.net>
|
2005-12-14 Leon Woestenberg <leon.woestenberg@gmx.net>
|
||||||
* inet.c: Duplicate FIN ACK race condition fix by Kelvin Lawson.
|
* inet.c: Duplicate FIN ACK race condition fix by Kelvin Lawson.
|
||||||
|
@ -561,6 +561,13 @@ tcp_slowtmr(void)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Check if this PCB has stayed too long in LAST-ACK */
|
||||||
|
if (pcb->state == LAST_ACK) {
|
||||||
|
if ((u32_t)(tcp_ticks - pcb->tmr) > 2 * TCP_MSL / TCP_SLOW_INTERVAL) {
|
||||||
|
++pcb_remove;
|
||||||
|
LWIP_DEBUGF(TCP_DEBUG, ("tcp_slowtmr: removing pcb stuck in LAST-ACK\n"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/* If the PCB should be removed, do it. */
|
/* If the PCB should be removed, do it. */
|
||||||
if (pcb_remove) {
|
if (pcb_remove) {
|
||||||
|
Loading…
Reference in New Issue
Block a user