mirror of
https://git.savannah.nongnu.org/git/lwip.git
synced 2025-08-13 09:54:39 +08:00

It is possible that the byte sent as a zero window probe is accepted and acknowledged by the receiver side without the window being opened. In that case, the stream has effectively advanced by one byte, and since lwIP did not take this into account on the sender side, the result was a desynchronization between the sender and the receiver. That situation could occur even on a lwIP loopback device, after filling up the receiver side's receive buffer, and resulted in an ACK storm. This patch corrects the problem by advancing the sender's next sequence number by one as needed when sending a zero window probe.