SYNOPSIS
#include <openssl/ssl.h>
int SSL_connect(SSL *ssl);
DESCRIPTION
SSL_connect() commence l'initiation de connexion TLS ou SSL avec un serveur. Le canal de communication doit avoir déjà été configuré et assigné à ssl en configurant le BIO sous-jacent.NOTES
Le comportement de SSL_connect() dépend du BIO sous-jacent.Si le BIO sous-jacent est bloquant, SSL_connect() ne s'arrêtera qu'une fois l'initiation de connexion terminée ou si une erreur survient.
Si le BIO sous-jacent est non bloquant, SSL_connect() s'arrêtera aussi si le BIO sous-jacent ne peut pas satisfaire les besoins de SSL_connect() pour continuer l'initiation de connexion, indiquant le problème avec la valeur de retour -1. Dans ce cas, un appel de SSL_get_error() avec la valeur de retour de SSL_connect() renverra SSL_ERROR_WANT_READ ou SSL_ERROR_WANT_WRITE. Le processus appelant doit alors répéter l'appel après avoir pris les mesures nécessaires pour satisfaire les besoins de SSL_connect(). L'action dépend du BIO sous-jacent. Lors de l'utilisation d'une socket non bloquante, il n'y a rien à faire, à part utiliser select() pour vérifier la condition nécessaire. Lors de l'utilisation d'un BIO de type tampon, comme une paire de BIO, les données doivent être écrites ou récupérées du BIO avant de pouvoir continuer.
VALEURS DE RETOUR
Les valeurs suivantes peuvent être renvoyées.- 0
- L'initiation de connexion TLS ou SSL n'a pas réussi mais a été arrêtée de façon contrôlée conformément aux spécifications des protocoles TLS ou SSL. Appelez SSL_get_error() avec la valeur de retour ret pour en connaître la raison.
- 1
- L'initiation de connexion TLS ou SSL a réussi, une connexion TLS ou SSL a été établie.
- <0
- L'initiation de connexion TLS ou SSL n'a pas réussi, soit à cause d'une erreur fatale survenue au niveau du protocole, soit à cause d'un échec de connexion. L'arrêt n'était pas propre. Cela peut aussi arriver si une action est nécessaire pour continuer l'opération pour les BIO non bloquants. Appelez SSL_get_error() avec la valeur de retour ret pour en connaître la raison.
TRADUCTION
La traduction de cette page de manuel est maintenue par les membres de la liste <debian-l10n-french AT lists DOT debian DOT org>. Veuillez signaler toute erreur de traduction par un rapport de bogue sur le paquet manpages-fr-extra.