anchor.diff:    Result := recv(FSocketHandle, data, len, MSG_PEEK);
   end;
   
  -function TRawSocket.RecvBufEnd(buf: PAnsiChar; len: Integer; endBuf: PAnsiChar;
  +function TRawSocket.RecvBufEnd(buf: PByte; len: Integer; endBuf: PByte;
       endBufLen: Integer): Integer;
   var
     lvRecvByte:byte;
     lvRet, j:Integer;
  -  lvTempEndBuf:PAnsiChar;
  +  lvTempEndBuf:PByte;
     lvMatchCounter:Integer;
   begin
     lvTempEndBuf := endBuf;
  
positive.code:     procedure CreateUdpSocket;
      function RecvBuf(var data; const len: Cardinal): Integer;
      function PeekBuf(var data; const len: Cardinal): Integer;
      function RecvBufEnd(buf: PAnsiChar; len: Integer; endBuf: PAnsiChar; endBufLen:
          Integer): Integer;
  
  
  
negative.code:       Result := lvRet;
        exit;
      end;
      if Byte(buf^) = Byte(lvTempEndBuf^) then
      begin
        Inc(lvMatchCounter);
        Inc(lvTempEndBuf);
  