Provided by: manpages-fr-extra_20151231_all bug

NOM

       BIO_read, BIO_write, BIO_gets, BIO_puts - Fonctions d'entrées et sorties de BIO

SYNOPSIS

        #include <openssl/bio.h>

        int    BIO_read(BIO *b, void *buf, int len);
        int    BIO_gets(BIO *b,char *buf, int size);
        int    BIO_write(BIO *b, const void *buf, int len);
        int    BIO_puts(BIO *b,const char *buf);

DESCRIPTION

       BIO_read() essaye de lire len octets du BIO b et place les données dans buf.

       BIO_gets() réalise l'opération « gets » des BIO et place les données dans buf.
       Normalement, cette opération essayera de lire une ligne de données de taille maximale len
       du BIO. Il y a cependant des exceptions à cela, par exemple BIO_gets() sur un BIO de
       signature calculera et renverra la signature mais d'autres BIO pourraient ne pas prendre
       BIO_gets() en charge du tout.

       BIO_write() essaye d'écrire len octets de buf sur le BIO b.

       BIO_puts() essaye d'écrire une chaîne buf terminée par null sur le BIO b.

VALEURS DE RETOUR

       Toutes ces fonctions renvoient soit la quantité de données lues ou écrites correctement
       (si la valeur de retour est positive), soit 0 ou -1 si aucune donnée n'a été lue ou
       écrite, soit -2 si l'opération n'est pas implémentée dans ce type de BIO en particulier.

NOTES

       Une valeur de retour de 0 ou -1 n'est pas forcément une indication d'erreur. En
       particulier quand la source ou la destination sont non bloquantes ou d'un certain type,
       cela pourrait juste être une indication qu'aucune donnée n'est actuellement disponible et
       que l'application devrait réessayer l'opération plus tard.

       Une technique parfois utilisée avec les sockets bloquantes est d'utiliser un appel système
       (comme select(), poll() ou équivalent) pour déterminer quand les données sont disponibles
       et ensuite d'appeler read() pour lire les données. L'équivalent avec les BIO (c'est-à-dire
       appeler select() sur la structure d'entrées et sorties sous-jacente et ensuite d'appeler
       BIO_read() pour lire les données) ne devrait pas être utilisé parce qu'un simple appel de
       BIO_read() peut provoquer plusieurs lectures (et écritures dans le cas des BIO SSL) sur la
       structure d'entrées et sorties sous-jacente et pourrait par conséquent bloquer. À la
       place, select() (ou équivalent) devrait être combiné avec des entrées et sorties non
       bloquantes pour que les lectures successives demandent à réessayer au lieu de bloquer.

       Consultez BIO_should_retry(3) pour des précisions sur la façon de déterminer la cause d'un
       réessai ou tout autre problème d'entrées et sorties.

       Si la fonction BIO_gets() n'est pas prise en charge par un BIO, alors contourner cela est
       possible en ajoutant un BIO tampon BIO_f_buffer(3) à la chaîne.

VOIR AUSSI

       BIO_should_retry(3)

       À préciser

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.