]> git.ipfire.org Git - thirdparty/openssl.git/blame - doc/ssl/SSL_set_bio.pod
Apache Traffic Server has a need to set the rbio without touching the wbio.
[thirdparty/openssl.git] / doc / ssl / SSL_set_bio.pod
CommitLineData
cc99526d
RL
1=pod
2
3=head1 NAME
4
3ffbe008 5SSL_set_bio, SSL_set_rbio, SSL_set_wbio - connect the SSL object with a BIO
cc99526d
RL
6
7=head1 SYNOPSIS
8
9 #include <openssl/ssl.h>
10
11 void SSL_set_bio(SSL *ssl, BIO *rbio, BIO *wbio);
12
13=head1 DESCRIPTION
14
15SSL_set_bio() connects the BIOs B<rbio> and B<wbio> for the read and write
1e4e5492 16operations of the TLS/SSL (encrypted) side of B<ssl>.
cc99526d 17
acb5b343
BM
18The SSL engine inherits the behaviour of B<rbio> and B<wbio>, respectively.
19If a BIO is non-blocking, the B<ssl> will also have non-blocking behaviour.
cc99526d
RL
20
21If there was already a BIO connected to B<ssl>, BIO_free() will be called
22(for both the reading and writing side, if different).
23
3ffbe008
MC
24SSL_set_rbio() does the same job as SSL_set_bio() except that it enables you
25to only connect the read bio, without touching the write bio. Similarly
26SSL_set_wbio() enables you to connect the write bio without touching the read
27bio.
28
cc99526d
RL
29=head1 RETURN VALUES
30
3ffbe008 31SSL_set_bio(), SSL_set_rbio() and SSL_set_wbio() cannot fail.
cc99526d
RL
32
33=head1 SEE ALSO
34
35L<SSL_get_rbio(3)|SSL_get_rbio(3)>,
36L<SSL_connect(3)|SSL_connect(3)>, L<SSL_accept(3)|SSL_accept(3)>,
1e4e5492 37L<SSL_shutdown(3)|SSL_shutdown(3)>, L<ssl(3)|ssl(3)>, L<bio(3)|bio(3)>
cc99526d 38
3ffbe008
MC
39=head1 HISTORY
40
41SSL_set_rbio() and SSL_set_wbio() were added in OpenSSL 1.1.0.
42
cc99526d 43=cut