bio 3 2001-07-10 0.9.9-dev OpenSSL

NAME

bio - I/O abstraction

LIBRARY

libcrypto, -lcrypto

SYNOPSIS


 #include 

TBA

DESCRIPTION

A BIO is an I/O abstraction, it hides many of the underlying I/O details from an application. If an application uses a BIO for its I/O it can transparently handle SSL connections, unencrypted network connections and file I/O.

There are two type of BIO, a source/sink BIO and a filter BIO.

As its name implies a source/sink BIO is a source and/or sink of data, examples include a socket BIO and a file BIO.

A filter BIO takes data from one BIO and passes it through to another, or the application. The data may be left unmodified (for example a message digest BIO) or translated (for example an encryption BIO). The effect of a filter BIO may change according to the I/O operation it is performing: for example an encryption BIO will encrypt data if it is being written to and decrypt data if it is being read from.

BIOs can be joined together to form a chain (a single BIO is a chain with one component). A chain normally consist of one source/sink BIO and one or more filter BIOs. Data read from or written to the first BIO then traverses the chain to the end (normally a source/sink BIO).

SEE ALSO

_B_I_O___c_t_r_l(3), _B_I_O___f___b_a_s_e_6_4(3), _B_I_O___f___b_u_f_f_e_r(3), _B_I_O___f___c_i_p_h_e_r(3), _B_I_O___f___m_d(3), _B_I_O___f___n_u_l_l(3), _B_I_O___f___s_s_l(3), _B_I_O___f_i_n_d___t_y_p_e(3), _B_I_O___n_e_w(3), _B_I_O___n_e_w___b_i_o___p_a_i_r(3), _B_I_O___p_u_s_h(3), _B_I_O___r_e_a_d(3), _B_I_O___s___a_c_c_e_p_t(3), _B_I_O___s___b_i_o(3), _B_I_O___s___c_o_n_n_e_c_t(3), _B_I_O___s___f_d(3), _B_I_O___s___f_i_l_e(3), _B_I_O___s___m_e_m(3), _B_I_O___s___n_u_l_l(3), _B_I_O___s___s_o_c_k_e_t(3), _B_I_O___s_e_t___c_a_l_l_b_a_c_k(3), _B_I_O___s_h_o_u_l_d___r_e_t_r_y(3)