The TServerSocket::Accept() seems to be missing a TSocket delete in the
event that a socket connection isn't waiting.  When the
TServerSocket::SetOption( kNoBlock,1), is used and Accept is placed in a
working loop, system memory vanishes rather quickly.
 TSocket *TServerSocket::Accept()
{
TSocket *socket = new TSocket;
 Int_t soc = gSystem->AcceptConnection(fSocket);
if (soc == -1) return 0;
 if (soc == -2) return (TSocket*) -1;
etc...
}
I think it needs the following:
TSocket *TServerSocket::Accept()
{
TSocket *socket = new TSocket;
 Int_t soc = gSystem->AcceptConnection(fSocket);
if (soc == -1)
    {
    delete socket;
    return 0;
    }
 if (soc == -2)
    {
    delete socket;
    return (TSocket*) -1;
    }
...etc
}
William Deninger
deninger@uiuc.edu