table of contents
fr::crypto::BIO_new(3SSL) | OpenSSL | fr::crypto::BIO_new(3SSL) |
NOM¶
BIO_new, BIO_set, BIO_free, BIO_vfree, BIO_free_all - Fonctions d'allocation et libération de BIO
SYNOPSIS¶
#include <openssl/bio.h> BIO * BIO_new(BIO_METHOD *type); int BIO_set(BIO *a,BIO_METHOD *type); int BIO_free(BIO *a); void BIO_vfree(BIO *a); void BIO_free_all(BIO *a);
DESCRIPTION¶
La fonction BIO_new() renvoie un nouveau BIO utilisant la méthode type.
BIO_set() définit la méthode d'un BIO déjà existant.
BIO_free() libère un seul BIO, BIO_vfree() libère aussi un seul BIO mais ne renvoie pas de valeur. Appeler BIO_free() pourrait aussi avoir un certain effet sur la structure d'entrées et sorties sous-jacente, par exemple elle pourrait fermer le fichier référencé dans certaines circonstances. Consultez les descriptions de chaque BIO_METHOD pour plus de précisions.
BIO_free_all() libère toute une chaîne de BIO, elle ne s'arrête pas en cas d'erreur de libération d'un BIO de la chaîne.
VALEURS DE RETOUR¶
BIO_new() renvoie un BIO nouvellement créé ou NULL si l'appel échoue.
BIO_set() et BIO_free() renvoient 1 si elles réussissent et 0 si elles échouent.
BIO_free_all() et BIO_vfree() ne renvoient pas de valeur.
NOTES¶
Certains BIO (comme les BIO mémoire) peuvent être utilisés immédiatement après avoir appelé BIO_new(). D'autres (comme les BIO fichier) ont besoin d'initialisation supplémentaire et une fonction utilitaire existe souvent pour créer et initialiser ce genre de BIO.
Si BIO_free() est appelée sur une chaîne de BIO, elle ne libérera qu'un seul BIO avec pour conséquence une fuite de mémoire.
Appeler BIO_free_all() sur un seul BIO a le même effet que d'appeler BIO_free() dessus à part l'absence de valeur de retour.
L'argument type est normalement fourni par une fonction qui renvoie un pointeur vers une BIO_METHOD. Une convention de nommage existe pour ce genre de fonction : un BIO source ou destination s'appelle BIO_s_*() et un BIO filtre BIO_f_*().
EXEMPLE¶
Créer un BIO mémoire :
BIO *mem = BIO_new(BIO_s_mem());
VOIR AUSSI¶
À 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.
2015-12-31 | 1.0.2a 1.0.2c |