Connection Lock-Down in Indy10 with D7 on Windows XP SP1

Giganews Newsgroups
Subject: Connection Lock-Down in Indy10 with D7 on Windows XP SP1
Posted by:  Thorsten K (thorstenklamm…@gmx.net)
Date: Mon, 17 Jan 2005

When I run the following code on two computers connected over
Gigabit-Ethrenet (Fullduplex capable), not only the connection that is
directly affected, but the whole "network line" is locked down on Windows XP
SP1.
Even pings fail after the code has been executed for a small amout of time
and the only possibility to reenable any connection between the teo
computers is to reboot the computer that hosted the server. No firewall,
proxy or software like that can be responsible for that behaviour as none of
that software has ever been installed on the computer (exception: MS
firewall that has never been activated...). The code runs fine if no
ethernet connection is used but local-loopback over localhost.

Server:
procedure TForm1.IdTCPServer1Execute(AContext: TIdContext);
var
  TestChar: Char;

begin
  TestChar := AContext.Connection.IOHandler.ReadChar;
  AContext.Connection.IOHandler.Write(TestChar);
end;

Client:
procedure TForm1.Button1Click(Sender: TObject);
var
  Buffer: TIdBytes;

begin
  IdTCPClient1.Connect;
  SetLength(Buffer, 6956); // That number is random...
  While 1=1 Do
    Begin
      If IdTCPClient1.IOHandler.InputBufferIsEmpty Then
        IdTCPClient1.IOHandler.Write(Buffer)
      Else
        IdTCPClient1.IOHandler.ReadChar;
      Application.ProcessMessages;
    End;
end;

If absolutely neccessary I would replace hardware, but I do not have other
computers available for a test, so I would like a short checkup if I just
made a terible mistake with that code or other fixes are known before I
spend my limited money on different test-hardware...

Any suggestions are greatly appreciated. Thaks for your time in advance,
Thorsten

Replies