Referência MQL5Funções de redeSocketTlsReadAvailable 

SocketTlsReadAvailable

Lê todos os dados disponíveis a partir de uma conexão TLS segura.

int  SocketTlsReadAvailable(
   int           socket,               // soquete
   uchar&        buffer[],             // buffer para ler dados do soquete
   const uint    buffer_maxlen         // número de bytes necessário para leitura
   );

Parâmetros

socket

[in]  Identificador do soquete retornado pela função SocketCreate. Ao passar um identificador inválido para _LastError é registrado o erro 5270 (ERR_NETSOCKET_INVALIDHANDLE).

buffer

[out]  Referência para array do tipo uchar em que serão lidos os dados. O tamanho da matriz dinâmica é aumentado pelo número de bytes lidos. O tamanho da matriz não pode exceder INT_MAX (2147483647).

buffer_maxlen

[in]  Número de bytes que devem ser lidos no array buffer[]. Os dados que não se encaixam na matriz permanecerão no soquete. Eles estarão disponíveis chamando SocketTlsReadAvailable ou SocketTlsRead. O valor Buffer_maxlen não pode exceder INT_MAX (2147483647).

Valor retornado

Se bem-sucedido, retorna o número de bytes lidos, em caso de erro, retorna -1.

Observação

Se ocorrer um erro durante a execução desta função no soquete do sistema, a conexão estabelecida Socketconnect será interrompida.

Se houver um erro ao ler os dados em _LastError é registrado o erro 5273 (ERR_NETSOCKET_IO_ERROR).

A função só pode ser chamada por EAs e scripts, pois eles trabalham em seu próprio fluxo de execução. Quando chamado do indicador GetLastError() retorna o erro 4014 — "Função do sistema não permitida para chamada".

Veja também

SocketTimeouts, MathSwap