1=pod
2
3=head1 NAME
4
5bio - I/O abstraction
6
7=head1 SYNOPSIS
8
9 #include <openssl/bio.h>
10
11TBA
12
13
14=head1 DESCRIPTION
15
16A BIO is an I/O abstraction, it hides many of the underlying I/O
17details from an application. If an application uses a BIO for its
18I/O it can transparently handle SSL connections, unencrypted network
19connections and file I/O.
20
21There are two type of BIO, a source/sink BIO and a filter BIO.
22
23As its name implies a source/sink BIO is a source and/or sink of data,
24examples include a socket BIO and a file BIO.
25
26A filter BIO takes data from one BIO and passes it through to
27another, or the application. The data may be left unmodified (for
28example a message digest BIO) or translated (for example an
29encryption BIO). The effect of a filter BIO may change according
30to the I/O operation it is performing: for example an encryption
31BIO will encrypt data if it is being written to and decrypt data
32if it is being read from.
33
34BIOs can be joined together to form a chain (a single BIO is a chain
35with one component). A chain normally consist of one source/sink
36BIO and one or more filter BIOs. Data read from or written to the
37first BIO then traverses the chain to the end (normally a source/sink
38BIO).
39
40=head1 SEE ALSO
41
42L<BIO_ctrl(3)|BIO_ctrl(3)>,
43L<BIO_f_base64(3)|BIO_f_base64(3)>, L<BIO_f_buffer(3)|BIO_f_buffer(3)>,
44L<BIO_f_cipher(3)|BIO_f_cipher(3)>, L<BIO_f_md(3)|BIO_f_md(3)>,
45L<BIO_f_null(3)|BIO_f_null(3)>, L<BIO_f_ssl(3)|BIO_f_ssl(3)>,
46L<BIO_find_type(3)|BIO_find_type(3)>, L<BIO_new(3)|BIO_new(3)>,
47L<BIO_new_bio_pair(3)|BIO_new_bio_pair(3)>,
48L<BIO_push(3)|BIO_push(3)>, L<BIO_read(3)|BIO_read(3)>,
49L<BIO_s_accept(3)|BIO_s_accept(3)>, L<BIO_s_bio(3)|BIO_s_bio(3)>,
50L<BIO_s_connect(3)|BIO_s_connect(3)>, L<BIO_s_fd(3)|BIO_s_fd(3)>,
51L<BIO_s_file(3)|BIO_s_file(3)>, L<BIO_s_mem(3)|BIO_s_mem(3)>,
52L<BIO_s_null(3)|BIO_s_null(3)>, L<BIO_s_socket(3)|BIO_s_socket(3)>,
53L<BIO_set_callback(3)|BIO_set_callback(3)>,
54L<BIO_should_retry(3)|BIO_should_retry(3)>
55