mirror of
https://github.com/lwip-tcpip/lwip.git
synced 2024-11-04 14:29:39 +00:00
Apply patch #9472: tcp_kill_prio: Don't kill active connection that has the same priority
in a modified, IMHO more readable way.
This commit is contained in:
parent
41cf4012af
commit
d8b6cdffcb
@ -6,6 +6,10 @@ HISTORY
|
||||
|
||||
++ New features:
|
||||
|
||||
2017-11-06: Axel Lin
|
||||
* TCP: kill existing connections with a LOWER priority than the one currently being opened.
|
||||
Previous implementations also kill existing connections of the SAME priority.
|
||||
|
||||
2017-09-21: Kalle Olavi Niemitalo
|
||||
* sockets: add poll() implementation (patch #9450)
|
||||
|
||||
|
@ -10,6 +10,9 @@ with newer versions.
|
||||
|
||||
++ Application changes:
|
||||
|
||||
* TCP only kills existing connections with a LOWER priority than the one currently being opened.
|
||||
Previous implementations also kill existing connections of the SAME priority.
|
||||
|
||||
* ip4_route_src: parameter order is reversed: ip4_route_src(dest, src) -> ip4_route_src(src, dest)
|
||||
to make parameter order consistent with other ip*_route*() functions.
|
||||
Same also applies to LWIP_HOOK_IP4_ROUTE_SRC() parameter order.
|
||||
|
@ -1621,8 +1621,7 @@ tcp_recv_null(void *arg, struct tcp_pcb *pcb, struct pbuf *p, err_t err)
|
||||
#endif /* LWIP_CALLBACK_API */
|
||||
|
||||
/**
|
||||
* Kills the oldest active connection that has the same or lower priority than
|
||||
* 'prio'.
|
||||
* Kills the oldest active connection that has a lower priority than 'prio'.
|
||||
*
|
||||
* @param prio minimum priority
|
||||
*/
|
||||
@ -1635,7 +1634,18 @@ tcp_kill_prio(u8_t prio)
|
||||
|
||||
mprio = LWIP_MIN(TCP_PRIO_MAX, prio);
|
||||
|
||||
/* We kill the oldest active connection that has the same or lower priority than prio. */
|
||||
/* We want to kill connections with a lower prio, so bail out if
|
||||
* supplied prio is 0 - there cannot be a no lower prio
|
||||
*/
|
||||
if (mprio == 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
/* We want kill connections with a lower prio, so decrement prio by one
|
||||
* and start searching for oldest connection with same or lower prio than mprio.
|
||||
*/
|
||||
mprio--;
|
||||
|
||||
inactivity = 0;
|
||||
inactive = NULL;
|
||||
for (pcb = tcp_active_pcbs; pcb != NULL; pcb = pcb->next) {
|
||||
|
Loading…
Reference in New Issue
Block a user