logo ← Manuais de Utilização / Manual de funções Lib TLS

Manual de funções Lib TLS

#Chamadas de Funções Multi-Thread da Lib TLS

Fonte: Chamadas de Métodos Lib TLS - GSURF


#GSURF_ERRORSSL gsurf_ssl_init(const char *appDataDir, char *uuid, GS_SSL *gs_data);

Descrição:\
Inicializa a biblioteca SSL, passando o diretório de dados do aplicativo, o UUID do dispositivo e uma estrutura de dados que receberá as informações internas da biblioteca. Retorna GSURF_ERRORSSL.

Parâmetros:

  • const char *appDataDir — Caminho do diretório de dados do aplicativo.

  • char *uuid — UUID (identificador único) do dispositivo.

  • GS_SSL *gs_data — Ponteiro para a estrutura que receberá os dados internos da biblioteca (estrutura opaca).


#GSURF_ERRORSSL gsurf_ssl_connect(const char *serviceName, const char *host, struct gsstruct **gs_data);

Descrição:\
Estabelece uma conexão SSL com o serviço desejado usando a estrutura de dados específica da biblioteca. Retorna GSURF_ERRORSSL.

Parâmetros:

  • const char *serviceName — Nome do serviço (obtido com o comercial da GSurf). Se NULL, usa "default".

  • const char *host — Endereço IP do host do Sitef Servidor via GW Local GSurf. Se NULL, conecta-se a um serviço hospedado.

  • struct gsstruct **gs_data — Ponteiro para a estrutura de dados da biblioteca que gerencia a conexão.


#GSURF_ERRORSSL gsurf_ssl_write(void *buffer, unsigned int bufferLength, int *bytesProcessed, struct gsstruct **gs_data);

Descrição:\
Envia dados ao servidor usando a estrutura de dados da biblioteca. Retorna GSURF_ERRORSSL.

Parâmetros:

  • void *buffer — Ponteiro para o início do buffer a ser enviado.

  • unsigned int bufferLength — Tamanho do buffer a ser enviado.

  • int *bytesProcessed — Ponteiro de saída com a quantidade de bytes enviados.

  • struct gsstruct **gs_data — Ponteiro para a estrutura de dados que gerencia a conexão.


#GSURF_ERRORSSL gsurf_ssl_read(void *buffer, unsigned int bufferLength, int *bytesProcessed, struct gsstruct **gs_data);

Descrição:\
Lê dados enviados pelo servidor usando a estrutura de dados da biblioteca. Retorna GSURF_ERRORSSL.

Parâmetros:

  • void *buffer — Ponteiro para o início do buffer de leitura.

  • unsigned int bufferLength — Tamanho do buffer de leitura.

  • int *bytesProcessed — Ponteiro de saída com a quantidade de bytes lidos.

  • struct gsstruct **gs_data — Ponteiro para a estrutura de dados que gerencia a conexão.


#GSURF_ERRORSSL gsurf_ssl_disconnect(struct gsstruct **gs_data);

Descrição:\
Encerra a conexão SSL com o servidor utilizando a estrutura de dados específica da biblioteca.

Parâmetros:

  • struct gsstruct **gs_data — Ponteiro para a estrutura de dados que gerencia a conexão.


#GSURF_ERRORSSL gsurf_ssl_shutdown(struct gsstruct **gs_data);

Descrição:\
Envia o sinal de desconexão para ambas as pontas utilizando a estrutura de dados da biblioteca. Retorna GSURF_ERRORSSL.

Parâmetros:

  • struct gsstruct **gs_data — Ponteiro para a estrutura de dados que gerencia a conexão.


#GSURF_ERRORSSL gsurf_ssl_install_certificate(char *activationKey, unsigned int activationKeyLength, char *otp, unsigned int otpLength, GS_SSL *gs_data);

Descrição:\
Instala o certificado no dispositivo usando a estrutura de dados da biblioteca. Retorna GSURF_ERRORSSL.

Parâmetros:

  • char *activationKey — Chave de ativação.

  • unsigned int activationKeyLength — Tamanho da string activationKey.

  • char *otp — Token de instalação obtido com o comercial da GSurf.

  • unsigned int otpLength — Tamanho da string otp.

  • GS_SSL *gs_data — Ponteiro para a estrutura de dados da biblioteca.


#void gsurf_ssl_free(struct gsstruct **gs_data);

Descrição:\
Libera a memória alocada pela biblioteca GSurf para a estrutura de dados especificada.

Parâmetros:

  • struct gsstruct **gs_data — Ponteiro para a estrutura de dados da biblioteca a ser liberada.


#void gsurf_ssl_set_timeout(struct gsstruct **gs_data, int timeout);

Descrição:\
Configura o tempo de timeout de leitura (em segundos) para a estrutura de dados especificada.

Parâmetros:

  • struct gsstruct **gs_data — Ponteiro para a estrutura de dados da biblioteca.

  • int timeout — Tempo de espera em segundos.


#GSURF_ERRORSSL gsurf_ssl_get_connection_status(struct gsstruct **gs_data, int timeout);

Descrição:\
Verifica o status da conexão SSL para a estrutura de dados especificada, com timeout em segundos. Retorna GSURF_ERRORSSL.

Parâmetros:

  • struct gsstruct **gs_data — Ponteiro para a estrutura de dados da biblioteca.

  • int timeout — Tempo de espera em segundos.


#GSURF_ERRORSSL gsurf_ssl_is_certificate_installed(struct gsstruct **gs_data);

Descrição:\
Verifica se o certificado está instalado para a estrutura de dados especificada. Retorna GSURF_ERRORSSL.

Parâmetros:

  • struct gsstruct **gs_data — Ponteiro para a estrutura de dados da biblioteca.


#GSURF_ERRORSSL gsurf_ssl_delete_certificate(struct gsstruct **gs_data);

Descrição:\
Solicita que o certificado seja apagado para a estrutura de dados especificada. Retorna GSURF_ERRORSSL.

Parâmetros:

  • struct gsstruct **gs_data — Ponteiro para a estrutura de dados da biblioteca.


#void gsurf_ssl_reset_dns(struct gsstruct **gs_data);

Descrição:\
Solicita que seja feita novamente a resolução de DNS para a estrutura de dados especificada.

Parâmetros:

  • struct gsstruct **gs_data — Ponteiro para a estrutura de dados da biblioteca.

#Chamadas de Funções Single-Thread da Lib TLS

Fonte: Chamadas de Métodos Lib TLS - GSURF


#GSURF_ERRORSSL gsurf_init_ssl(char *appDataDir, char *uuid);

Descrição:\
Inicializa a biblioteca SSL. Retorna GSURF_ERRORSSL.

Parâmetros:

  • char *appDataDir — Caminho do diretório de dados do aplicativo.

  • char *uuid — UUID (identificador único) do dispositivo.


#GSURF_ERRORSSL gsurf_connect_ssl(const char *serviceName, const char *host);

Descrição:\
Estabelece conexão SSL com o serviço desejado. Retorna GSURF_ERRORSSL.

Parâmetros:

  • const char *serviceName — Nome do serviço (obtido com o comercial da GSurf). Se NULL, usa "default".

  • const char *host — Endereço IP do host do Sitef Servidor via GW Local GSurf. Se NULL, conecta-se a um serviço hospedado.


#GSURF_ERRORSSL gsurf_read_ssl(void *buffer, unsigned int bufferLength, int *bytesProcessed);

Descrição:\
Lê dados enviados pelo servidor. Retorna GSURF_ERRORSSL.

Parâmetros:

  • void *buffer — Ponteiro para o início do buffer de leitura.

  • unsigned int bufferLength — Tamanho do buffer de leitura.

  • int *bytesProcessed — Ponteiro de saída com a quantidade de bytes lidos.


#GSURF_ERRORSSL gsurf_write_ssl(void *buffer, unsigned int bufferLength, int *bytesProcessed);

Descrição:\
Envia dados para o servidor. Retorna GSURF_ERRORSSL.

Parâmetros:

  • void *buffer — Ponteiro para o início do buffer a ser enviado.

  • unsigned int bufferLength — Tamanho do buffer a ser enviado.

  • int *bytesProcessed — Ponteiro de saída com a quantidade de bytes enviados.


#GSURF_ERRORSSL gsurf_disconnect_ssl();

Descrição:\
Encerra a conexão SSL com o servidor. Retorna GSURF_ERRORSSL.


#GSURF_ERRORSSL gsurf_install_certificate_ssl(char *activationKey, unsigned int activationKeyLength, char *otp, unsigned int otpLength);

Descrição:\
Instala o certificado no dispositivo. Retorna GSURF_ERRORSSL.

Parâmetros:

  • char *activationKey — Chave de ativação.

  • unsigned int activationKeyLength — Tamanho da string activationKey.

  • char *otp — Token de instalação obtido com o comercial da GSurf.

  • unsigned int otpLength — Tamanho da string otp.


#void gsurf_free_ssl();

Descrição:\
Libera a memória alocada pela biblioteca GSurf.


#void gsurf_set_cb_trace(GSURF_CB_TRACE cb_trace);

Descrição:\
Define o callback que será chamado para registro de logs. A configuração desse callback é opcional.

Parâmetros:

  • GSURF_CB_TRACE cb_trace — Função de callback utilizada para registrar logs.

Assinatura da função de callback:

```c
void (GSURF_CB_TRACE)(const char title, int lenghtBuffer, const char *buffer);