BIO_NEW(3ssl) | OpenSSL | BIO_NEW(3ssl) |
NUME
BIO_new_ex, BIO_new, BIO_up_ref, BIO_free, BIO_vfree, BIO_free_all - funcții de alocare și eliberare BIO
SINOPSIS
#include <openssl/bio.h> BIO *BIO_new_ex(OSSL_LIB_CTX *libctx, const BIO_METHOD *type); BIO *BIO_new(const BIO_METHOD *type); int BIO_up_ref(BIO *a); int BIO_free(BIO *a); void BIO_vfree(BIO *a); void BIO_free_all(BIO *a);
DESCRIERE
Funcția BIO_new_ex() returnează un nou BIO utilizând metoda type asociată cu contextul bibliotecii libctx (a se vedea OSSL_LIB_CTX(3)). Contextul bibliotecii poate fi NULL pentru a indica contextul bibliotecii implicite. type NU TREBUIE să fie NULL.
BIO_new() este identică cu BIO_new_ex(), cu excepția faptului că se utilizează întotdeauna contextul bibliotecii implicite.
BIO_up_ref() crește numărul de referințe asociate obiectului BIO.
BIO_free() eliberează un singur BIO, BIO_vfree() eliberează, de asemenea, un singur BIO, dar nu returnează o valoare. Dacă a este NULL, nu se face nimic Apelarea BIO_free() poate avea, de asemenea, un anumit efect asupra structurii I/O subiacente, de exemplu, poate închide fișierul la care se face referire în anumite circumstanțe. Pentru mai multe detalii, consultați descrierile individuale ale BIO_METHOD.
BIO_free_all() eliberează întregul lanț BIO, nu se oprește dacă apare o eroare la eliberarea unui BIO individual din lanț. Dacă a este NULL, nu se face nimic.
VALORI RETURNATE
BIO_new_ex() și BIO_new() returnează un BIO nou creat sau NULL dacă apelul eșuează.
BIO_up_ref() și BIO_free() returnează 1 în caz de succes și 0 în caz de eșec.
BIO_free_all() și BIO_vfree() nu returnează valori.
NOTE
Dacă BIO_free() este apelată pe un lanț BIO, aceasta va elibera doar un singur BIO, ceea ce va duce la o pierdere de memorie.
Apelarea BIO_free_all() pe un singur BIO are același efect ca apelarea BIO_free() pe acesta, cu excepția valorii returnate eliminate.
ISTORIC
BIO_set() a fost eliminată în OpenSSL 1.1.0, deoarece tipul BIO este acum opac.
BIO_new_ex() a fost adăugată în OpenSSL 3.0.
EXEMPLE
Creează o memorie BIO:
BIO *mem = BIO_new(BIO_s_mem());
DREPTURI DE AUTOR
Drepturi de autor 2000-2021 The OpenSSL Project Authors. Toate drepturile rezervate.
Licențiat sub Licența Apache 2.0 („License”). Nu aveți voie să utilizați acest fișier decât în conformitate cu licența. Puteți obține o copie din fișierul LICENSE din distribuția sursei sau de la https://www.openssl.org/source/license.html.
TRADUCERE
Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>
Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO RESPONSABILITATE.
Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-ro@lists.sourceforge.net.
5 august 2025 | 3.5.2 |