|
|
|
@ -1145,11 +1145,6 @@ tcp_output(struct tcp_pcb *pcb) |
|
|
|
/* In the case of fast retransmit, the packet should not go to the tail
|
|
|
|
/* In the case of fast retransmit, the packet should not go to the tail
|
|
|
|
* of the unacked queue, but rather somewhere before it. We need to check for |
|
|
|
* of the unacked queue, but rather somewhere before it. We need to check for |
|
|
|
* this case. -STJ Jul 27, 2004 */ |
|
|
|
* this case. -STJ Jul 27, 2004 */ |
|
|
|
if (seg == NULL || useg != NULL) |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
LWIP_DEBUGF(TCP_DEBUG, ("seg or useg was null, skipping this packet\n")); |
|
|
|
|
|
|
|
return ERR_OK; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
if (TCP_SEQ_LT(lwip_ntohl(seg->tcphdr->seqno), lwip_ntohl(useg->tcphdr->seqno))) { |
|
|
|
if (TCP_SEQ_LT(lwip_ntohl(seg->tcphdr->seqno), lwip_ntohl(useg->tcphdr->seqno))) { |
|
|
|
/* add segment to before tail of unacked list, keeping the list sorted */ |
|
|
|
/* add segment to before tail of unacked list, keeping the list sorted */ |
|
|
|
struct tcp_seg **cur_seg = &(pcb->unacked); |
|
|
|
struct tcp_seg **cur_seg = &(pcb->unacked); |
|
|
|
|