> ICS version "OverbytesV7Gold"

This is long obsolete, it does not support any recent releases of OpenSSL, so 
your
application will contain lots of security risks.
You should be using V8.16 or later. 

> The length of the message is not being dealt with correctly in the 
> ClientDataAvailable procedure.
>       { We use line mode. We will receive complete lines }

I don't like line mode, it buffers characters until a new line is found, which 
may
be never if the connection breaks. 

>       RcvdLine := ReceiveStr;
>       { Remove trailing CR/LF }
>       while (Length(RcvdLine) > 0) 

The DataAvailable event can be called multiple times with no actual data to 
process,
you need to handle that. 

> When I send a sequence of messages as a null terminated string of 
> length <500 bytes, if I do not close the socket on each occasion 
> the above "ReceiveStr" method tries to receive all the messages at 
> once 

Not sure if this is as designed, but generally you need to extract a line at a 
time
and process it, avoiding line mode as I said above, then you are in complete 
control.


Angus

-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be

Reply via email to