Browse Source

BUG27199: use snd_wl2 instead of snd_wl1

STABLE-2_1_x
kieranm 17 years ago
parent
commit
fa2dbc2b1b
  1. 3
      CHANGELOG
  2. 6
      src/core/tcp_in.c

3
CHANGELOG

@ -116,6 +116,9 @@ HISTORY
++ Bugfixes:
2009-08-12 Kieran Mansley
* tcp_in.c: Fix bug #27199: use snd_wl2 instead of snd_wl1
2009-07-28 Simon Goldschmidt
* mem.h: Fixed bug #27105: "realloc() cannot replace mem_realloc()"s

6
src/core/tcp_in.c

@ -738,7 +738,7 @@ tcp_receive(struct tcp_pcb *pcb)
u8_t accepted_inseq = 0;
if (flags & TCP_ACK) {
right_wnd_edge = pcb->snd_wnd + pcb->snd_wl1;
right_wnd_edge = pcb->snd_wnd + pcb->snd_wl2;
/* Update window. */
if (TCP_SEQ_LT(pcb->snd_wl1, seqno) ||
@ -765,7 +765,7 @@ tcp_receive(struct tcp_pcb *pcb)
if (pcb->lastack == ackno) {
pcb->acked = 0;
if (pcb->snd_wl1 + pcb->snd_wnd == right_wnd_edge){
if (pcb->snd_wl2 + pcb->snd_wnd == right_wnd_edge){
++pcb->dupacks;
if (pcb->dupacks >= 3 && pcb->unacked != NULL) {
if (!(pcb->flags & TF_INFR)) {
@ -802,7 +802,7 @@ tcp_receive(struct tcp_pcb *pcb)
}
} else {
LWIP_DEBUGF(TCP_FR_DEBUG, ("tcp_receive: dupack averted %"U32_F" %"U32_F"\n",
pcb->snd_wl1 + pcb->snd_wnd, right_wnd_edge));
pcb->snd_wl2 + pcb->snd_wnd, right_wnd_edge));
}
} else if (TCP_SEQ_BETWEEN(ackno, pcb->lastack+1, pcb->snd_nxt)){
/* We come here when the ACK acknowledges new data. */

Loading…
Cancel
Save