anchor.diff:              end;
           RX_LENGTH: begin
                   digit := FPSocket^.RecvByte(1000);
  -                if (FPSocket^.LastError = ESysETIMEDOUT) then continue;
  +                if (FPSocket^.LastError <> 0) then continue;
                   if (FPSocket^.LastError <> 0) then
                     rxState := RX_ERROR
                   else
  
positive.code:                 remainingLength := 0;
                  CurrentMessage.Data := nil;
                  CurrentMessage.FixedHeader := FPSocket^.RecvByte(1000);
                  if (FPSocket^.LastError = ESysETIMEDOUT) then continue;
                  if (FPSocket^.LastError <> 0) then
                    rxState := RX_ERROR
                  else
  
negative.code: interface
  
  uses
    SysUtils, Classes, blcksock;
  
  type TBytes = array of Byte;
  
  