*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->Tru64 Unix man pages -> BIO_find_type (3)              



NAME    [Toc]    [Back]

       BIO_find_type, BIO_next - BIO chain traversal

SYNOPSIS    [Toc]    [Back]

       #include <openssl/bio.h>

       BIO *     BIO_find_type(
               BIO *b,
               int bio_type ); BIO *     BIO_next(
               BIO            *b            );            #define
       BIO_method_type(b)         ((b)->method->type)

       #define          BIO_TYPE_NONE         0           #define
       BIO_TYPE_MEM          (1|0x0400)                   #define
       BIO_TYPE_FILE         (2|0x0400)

       #define     BIO_TYPE_FD      (4|0x0400|0x0100)     #define
       BIO_TYPE_SOCKET       (5|0x0400|0x0100)            #define
       BIO_TYPE_NULL         (6|0x0400)                   #define
       BIO_TYPE_SSL          (7|0x0200)                   #define
       BIO_TYPE_MD      (8|0x0200)                        #define
       BIO_TYPE_BUFFER       (9|0x0200)                   #define
       BIO_TYPE_CIPHER       (10|0x0200)                  #define
       BIO_TYPE_BASE64       (11|0x0200)   #define  BIO_TYPE_CONNECT
 (12|0x0400|0x0100)                            #define
       BIO_TYPE_ACCEPT       (13|0x0400|0x0100)           #define
       BIO_TYPE_PROXY_CLIENT (14|0x0200)                  #define
       BIO_TYPE_PROXY_SERVER (15|0x0200)                  #define
       BIO_TYPE_NBIO_TEST    (16|0x0200)                  #define
       BIO_TYPE_NULL_FILTER  (17|0x0200)                  #define
       BIO_TYPE_BER          (18|0x0200)                  #define
       BIO_TYPE_BIO          (19|0x0400)

       #define BIO_TYPE_DESCRIPTOR   0x0100 #define BIO_TYPE_FILTER
       0x0200 #define BIO_TYPE_SOURCE_SINK  0x0400

DESCRIPTION    [Toc]    [Back]

       The BIO_find_type() function searches for a BIO of a given
       type  in a chain, starting at BIO b. If type is a specific
       type, such as BIO_TYPE_MEM, then a search is  made  for  a
       BIO  of  that  type.  If  type  is a general type, such as
       BIO_TYPE_SOURCE_SINK, then the next matching  BIO  of  the
       given  general type is sought. The BIO_find_type()function
       returns the next matching BIO or NULL if none is found.


       Some BIO_TYPE_* types do not have corresponding BIO implementations.

       The BIO_next()function returns the next BIO in a chain. It
       can be used to traverse all BIOs in a  chain  or  used  in
       conjunction  with the BIO_find_type() function to find all
       BIOs of a certain type.

       The BIO_method_type() function returns the type of a  BIO.

NOTES    [Toc]    [Back]

       The BIO_next() function was added to OpenSSL 0.9.6 to provide
 a clean way to traverse a BIO chain or find  multiple
       matches  using the BIO_find_type() function. Previous versions
 used the following:
        next = bio->next_bio;

RESTRICTIONS    [Toc]    [Back]

       The BIO_find_type() function in OpenSSL 0.9.5a and earlier
       could  not be safely passed a NULL pointer for the b argument.

RETURN VALUES    [Toc]    [Back]

       The BIO_find_type() function returns  a  matching  BIO  or
       NULL for no match.

       The BIO_next() function returns the next BIO in a chain.

       The BIO_method_type() function returns the type of the BIO

EXAMPLE    [Toc]    [Back]

       Traverse a chain looking for digest BIOs:
        BIO *btmp;
        btmp = in_bio;     /* in_bio is chain to  search  through

        do {
            btmp = BIO_find_type(btmp, BIO_TYPE_MD);      if(btmp
       == NULL) break;   /* Not found */      /* btmp is a digest
       BIO, do something with it ...*/

            btmp = BIO_next(btmp);
        } while(btmp);

SEE ALSO    [Toc]    [Back]


[ Back ]
 Similar pages
Name OS Title
drawfochlt IRIX draw the traversal highlight ring for a widget
DtEditorTraverseToEditor HP-UX set keyboard traversal to the edit window of a DtEditor widget
SSL_CTX_add_extra_chain_cert OpenBSD add certificate to chain
SSL_CTX_add_extra_chain_cert Tru64 Add certificate to chain
SSL_CTX_add_extra_chain_cert NetBSD add certificate to chain
BIO_push NetBSD add and remove BIOs from a chain.
iflClassList IRIX class inheritance chain
BIO_pop Tru64 Add and remove BIOs from a chain.
BIO_push Tru64 Add and remove BIOs from a chain.
SSL_get_peer_cert_chain NetBSD get the X509 certificate chain of the peer
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service