BIO_FIND_TYPE(3ssl) OpenSSL BIO_FIND_TYPE(3ssl)

BIO_find_type, BIO_next, BIO_method_type - traversarea lanțului BIO

#include <openssl/bio.h>
BIO *BIO_find_type(BIO *b, int bio_type);
BIO *BIO_next(BIO *b);
int BIO_method_type(const BIO *b);

BIO_find_type() caută un BIO de un anumit tip într-un lanț, începând cu BIO b. Dacă type este un tip specific (cum ar fi BIO_TYPE_MEM), atunci se efectuează o căutare pentru un BIO de acel tip. Dacă type este un tip general (cum ar fi BIO_TYPE_SOURCE_SINK), atunci se caută următorul BIO corespunzător tipului general dat. BIO_find_type() returnează următorul BIO corespunzător sau NULL dacă nu se găsește niciunul. Dacă type este BIO_TYPE_NONE, nu se va găsi nicio potrivire.

Sunt definite următoarele tipuri generale: BIO_TYPE_DESCRIPTOR, BIO_TYPE_FILTER și BIO_TYPE_SOURCE_SINK.

Pentru o listă a tipurilor specifice, consultați fișierul antet <openssl/bio.h>.

BIO_next() returnează următorul BIO dintr-un lanț. Poate fi utilizat pentru a parcurge toate BIO-urile dintr-un lanț sau utilizat împreună cu BIO_find_type() pentru a găsi toate BIO-urile de un anumit tip.

BIO_method_type() returnează tipul unui BIO.

BIO_find_type() returnează un BIO ce coincide căutării specificate sau NULL dacă nu există nicio potrivire.

BIO_next() returnează următorul BIO dintr-un lanț.

BIO_method_type() returnează tipul BIO b.

Parcurge un lanț în căutarea sumelor de control (digest) BIO:

BIO *btmp;
btmp = in_bio; /* in_bio este lanțul care trebuie căutat */
do {
    btmp = BIO_find_type(btmp, BIO_TYPE_MD);
    if (btmp == NULL)
        break; /* Nu s-a găsit */
    /* btmp este un digest BIO, fă ceva cu el ...*/
    ...
    btmp = BIO_next(btmp);
} while (btmp);

Drepturi de autor 2000-2024 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.

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