]>
Commit | Line | Data |
---|---|---|
eb272ac0 LJ |
1 | =pod |
2 | ||
3 | =head1 NAME | |
4 | ||
5 | SSL_set_connect_state, SSL_get_accept_state - prepare SSL object to work in client or server mode | |
6 | ||
7 | =head1 SYNOPSIS | |
8 | ||
9 | #include <openssl/ssl.h> | |
10 | ||
11 | void SSL_set_connect_state(SSL *ssl); | |
12 | ||
13 | void SSL_set_accept_state(SSL *ssl); | |
14 | ||
15 | =head1 DESCRIPTION | |
16 | ||
7abe76e1 | 17 | SSL_set_connect_state() sets B<ssl> to work in client mode. |
eb272ac0 | 18 | |
7abe76e1 | 19 | SSL_set_accept_state() sets B<ssl> to work in server mode. |
eb272ac0 LJ |
20 | |
21 | =head1 NOTES | |
22 | ||
23 | When the SSL_CTX object was created with L<SSL_CTX_new(3)|SSL_CTX_new(3)>, | |
24 | it was either assigned a dedicated client method, a dedicated server | |
25 | method, or a generic method, that can be used for both client and | |
26 | server connections. (The method might have been changed with | |
27 | L<SSL_CTX_set_ssl_version(3)|SSL_CTX_set_ssl_version(3)> or | |
28 | SSL_set_ssl_method().) | |
29 | ||
7abe76e1 LJ |
30 | When beginning a new handshake, the SSL engine must know whether it must |
31 | call the connect (client) or accept (server) routines. Even though it may | |
32 | be clear from the method chosen, whether client or server mode was | |
33 | requested, the handshake routines must be explicitly set. | |
34 | ||
35 | When using the L<SSL_connect(3)|SSL_connect(3)> or | |
36 | L<SSL_accept(3)|SSL_accept(3)> routines, the correct handshake | |
37 | routines are automatically set. When performing a transparent negotiation | |
38 | using L<SSL_write(3)|SSL_write(3)> or L<SSL_read(3)|SSL_read(3)>, the | |
3b80e3aa | 39 | handshake routines must be explicitly set in advance using either |
7abe76e1 | 40 | SSL_set_connect_state() or SSL_set_accept_state(). |
eb272ac0 LJ |
41 | |
42 | =head1 RETURN VALUES | |
43 | ||
44 | SSL_set_connect_state() and SSL_set_accept_state() do not return diagnostic | |
45 | information. | |
46 | ||
47 | =head1 SEE ALSO | |
48 | ||
49 | L<ssl(3)|ssl(3)>, L<SSL_new(3)|SSL_new(3)>, L<SSL_CTX_new(3)|SSL_CTX_new(3)>, | |
7abe76e1 LJ |
50 | L<SSL_connect(3)|SSL_connect(3)>, L<SSL_accept(3)|SSL_accept(3)>, |
51 | L<SSL_write(3)|SSL_write(3)>, L<SSL_read(3)|SSL_read(3)>, | |
eb272ac0 LJ |
52 | L<SSL_CTX_set_ssl_version(3)|SSL_CTX_set_ssl_version(3)> |
53 | ||
54 | =cut |