public void SetValues (int read_timeout, int write_timeout)
{
// FIXME: The windows api docs are not very clear about read timeouts,
// and we have to simulate infinite with a big value (uint.MaxValue - 1)
ReadIntervalTimeout = MaxDWord;
ReadTotalTimeoutMultiplier = MaxDWord;
ReadTotalTimeoutConstant = (read_timeout == -1 ? MaxDWord - 1 : (uint) read_timeout);
WriteTotalTimeoutMultiplier = 0;
WriteTotalTimeoutConstant = (write_timeout == -1 ? MaxDWord : (uint) write_timeout);
}