Script for debugging SeattleTestbed/affix#56.
Script for debugging SeattleTestbed/affix#56.

The current TCP relay code has a bug making it drop data it received
(rather than relaying it to the other side) when the sender closes the
connection.

Using this test script, you can experiment with different scenarios.
It lets you set the reaction speed of the server (how long it waits
until it starts receiving), the amount of data the sender will send,
and the time that the sender will keep the connection open after it
is done sending.

The effect, i.e. the full transmission failing, is triggered more easily
* the more the sender pours into the buffer,
* the quicker the sender drops the connection after sending, and
* the slower the receiver receives from the relay's buffer.

In the current state of things (with live TCP relays buffering up to
50kB and the TCP socket buffers set to 10kB by Repy), problems start
at around 20000 bytes and no delay/hang-on.
Increasing the sender hang-on time makes the receiver receive all data.
YMMV still given your latency to the TCP relay.

SeattleTestbed/affix