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.

1.0.2a 1.0.2c                                      2015-12-31                         fr::crypto::BIO_read(3SSL)