* About

The purpose of these tests is to verify that TCP UTO functions correctly
in selected scenarios. The test programs, send_uto and generic_uto "evolved"
from programs that could be used by a user to programs with 8 arguments
(thus they are appropriate for automated testing but woefully inadequate for
interactive use).

* Requirements

Certain tests require root privileges to run, in order to create / delete
loopback interfaces and ipfw rules. These tests will fail if run as a regular
user.

In order to simulate a broken link, the test system must have both ipfw and
divert support. The result of the tests is undefined on systems without ipfw
& divert.

* Operation

The tests consist of simulating data transfer over a TCP connection, using
loopback devices. The link between the simulated peers can be interrupted
(using ipfw divert). The TCP connection should survive if the server accepts
an UTO value that is larger than the downtime. The script runtest.sh contains
details.

* Running the tests

To run the tests: runtest.sh number.
