I’m using version 1.3.2. In the case where I do this:
tcp_write(pcb, (void*)"\r\n", 2, TCP_WRITE_FLAG_COPY);
tcp_write(pcb, (void*)">", 1, TCP_WRITE_FLAG_COPY);
Communications stop, but LwIP keeps retrying forever. I can fix the problem by
making the following modification in tcp_enqueue:
/* If there is room in the last pbuf on the unsent queue,
chain the first pbuf on the queue together with that. */
if (TCP_ALLOW_BUFFER_CHAINING_JMS &&
...
With TCP_ALLOW_BUFFER_CHAINING_JMS set to false, the problem goes way. I
suspect the packets are going out, but have an incorrect checksum or are
permanently corrupted somewhere along the way. BTW, I’m using LwIP functions
in only one thread (the main loop) and only outside of interrupts, so I don’t
think it’s a threading issue.
Is this a bug, or is something else going on?
-Jeremy
_______________________________________________
lwip-users mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/lwip-users