|
|
|
@ -504,7 +504,7 @@ tcp_output(struct tcp_pcb *pcb) |
|
|
|
lwip_tcp_trace_record(pcb->ctx, 'X', ntohl(seg->tcphdr->seqno), seg->len, wnd, |
|
|
|
lwip_tcp_trace_record(pcb->ctx, 'X', ntohl(seg->tcphdr->seqno), seg->len, wnd, |
|
|
|
(uint16_t)pcb->rto, pcb->rtime, (uint8_t)pcb->state); |
|
|
|
(uint16_t)pcb->rto, pcb->rtime, (uint8_t)pcb->state); |
|
|
|
if (g_tcp_trace) g_tcp_trace(pcb->ctx, 'X', ntohl(seg->tcphdr->seqno), seg->len, wnd, "cwd"); |
|
|
|
if (g_tcp_trace) g_tcp_trace(pcb->ctx, 'X', ntohl(seg->tcphdr->seqno), seg->len, wnd, "cwd"); |
|
|
|
DEBUG_ERROR(DEBUG_CATEGORY_TRAFFIC, "TCP_OUTPUT cwnd limited: seqno_diff=%u seg_len=%u wnd=%u cwnd=%u snd_wnd=%u", |
|
|
|
DEBUG_TRACE(DEBUG_CATEGORY_TRAFFIC, "TCP_OUTPUT cwnd limited: seqno_diff=%u seg_len=%u wnd=%u cwnd=%u snd_wnd=%u", |
|
|
|
ntohl(seg->tcphdr->seqno) - pcb->lastack, seg->len, wnd, pcb->cwnd, pcb->snd_wnd); |
|
|
|
ntohl(seg->tcphdr->seqno) - pcb->lastack, seg->len, wnd, pcb->cwnd, pcb->snd_wnd); |
|
|
|
if (wnd == pcb->snd_wnd && pcb->unacked == NULL && pcb->persist_backoff == 0) { |
|
|
|
if (wnd == pcb->snd_wnd && pcb->unacked == NULL && pcb->persist_backoff == 0) { |
|
|
|
pcb->persist_cnt = 0; |
|
|
|
pcb->persist_cnt = 0; |
|
|
|
@ -534,7 +534,7 @@ tcp_output(struct tcp_pcb *pcb) |
|
|
|
lwip_tcp_trace_record(pcb->ctx, 'S', ntohl(seg->tcphdr->seqno), seg->len, wnd, |
|
|
|
lwip_tcp_trace_record(pcb->ctx, 'S', ntohl(seg->tcphdr->seqno), seg->len, wnd, |
|
|
|
(uint16_t)pcb->rto, pcb->rtime, (uint8_t)pcb->state); |
|
|
|
(uint16_t)pcb->rto, pcb->rtime, (uint8_t)pcb->state); |
|
|
|
if (g_tcp_trace) g_tcp_trace(pcb->ctx, 'S', ntohl(seg->tcphdr->seqno), seg->len, wnd, "snt"); |
|
|
|
if (g_tcp_trace) g_tcp_trace(pcb->ctx, 'S', ntohl(seg->tcphdr->seqno), seg->len, wnd, "snt"); |
|
|
|
DEBUG_ERROR(DEBUG_CATEGORY_TRAFFIC, "TCP_OUTPUT seg seqno=%u len=%u wnd=%u cwnd=%u ret=%d", |
|
|
|
DEBUG_TRACE(DEBUG_CATEGORY_TRAFFIC, "TCP_OUTPUT seg seqno=%u len=%u wnd=%u cwnd=%u ret=%d", |
|
|
|
ntohl(seg->tcphdr->seqno), seg->len, wnd, pcb->cwnd, err); |
|
|
|
ntohl(seg->tcphdr->seqno), seg->len, wnd, pcb->cwnd, err); |
|
|
|
if (err != LERR_OK) { |
|
|
|
if (err != LERR_OK) { |
|
|
|
tcp_set_flags(pcb, TF_NAGLEMEMERR); |
|
|
|
tcp_set_flags(pcb, TF_NAGLEMEMERR); |
|
|
|
|