]>
Commit | Line | Data |
---|---|---|
cdd7c3ce LJ |
1 | =pod |
2 | ||
3 | =head1 NAME | |
4 | ||
5 | SSL_CTX_set_quiet_shutdown, SSL_CTX_get_quiet_shutdown, SSL_set_quiet_shutdown, SSL_get_quiet_shutdown - manipulate shutdown behaviour | |
6 | ||
7 | =head1 SYNOPSIS | |
8 | ||
9 | #include <openssl/ssl.h> | |
10 | ||
11 | void SSL_CTX_set_quiet_shutdown(SSL_CTX *ctx, int mode); | |
c3e64028 | 12 | int SSL_CTX_get_quiet_shutdown(const SSL_CTX *ctx); |
cdd7c3ce LJ |
13 | |
14 | void SSL_set_quiet_shutdown(SSL *ssl, int mode); | |
c3e64028 | 15 | int SSL_get_quiet_shutdown(const SSL *ssl); |
cdd7c3ce LJ |
16 | |
17 | =head1 DESCRIPTION | |
18 | ||
19 | SSL_CTX_set_quiet_shutdown() sets the "quiet shutdown" flag for B<ctx> to be | |
20 | B<mode>. SSL objects created from B<ctx> inherit the B<mode> valid at the time | |
9b86974e | 21 | L<SSL_new(3)> is called. B<mode> may be 0 or 1. |
cdd7c3ce LJ |
22 | |
23 | SSL_CTX_get_quiet_shutdown() returns the "quiet shutdown" setting of B<ctx>. | |
24 | ||
25 | SSL_set_quiet_shutdown() sets the "quiet shutdown" flag for B<ssl> to be | |
26 | B<mode>. The setting stays valid until B<ssl> is removed with | |
9b86974e RS |
27 | L<SSL_free(3)> or SSL_set_quiet_shutdown() is called again. |
28 | It is not changed when L<SSL_clear(3)> is called. | |
cdd7c3ce LJ |
29 | B<mode> may be 0 or 1. |
30 | ||
31 | SSL_get_quiet_shutdown() returns the "quiet shutdown" setting of B<ssl>. | |
32 | ||
33 | =head1 NOTES | |
34 | ||
35 | Normally when a SSL connection is finished, the parties must send out | |
8e593f0a | 36 | close_notify alert messages using L<SSL_shutdown(3)> |
cdd7c3ce LJ |
37 | for a clean shutdown. |
38 | ||
9b86974e | 39 | When setting the "quiet shutdown" flag to 1, L<SSL_shutdown(3)> |
cdd7c3ce | 40 | will set the internal flags to SSL_SENT_SHUTDOWN|SSL_RECEIVED_SHUTDOWN. |
9b86974e RS |
41 | (L<SSL_shutdown(3)> then behaves like |
42 | L<SSL_set_shutdown(3)> called with | |
cdd7c3ce | 43 | SSL_SENT_SHUTDOWN|SSL_RECEIVED_SHUTDOWN.) |
8e593f0a | 44 | The session is thus considered to be shutdown, but no close_notify alert |
cdd7c3ce LJ |
45 | is sent to the peer. This behaviour violates the TLS standard. |
46 | ||
47 | The default is normal shutdown behaviour as described by the TLS standard. | |
48 | ||
49 | =head1 RETURN VALUES | |
50 | ||
51 | SSL_CTX_set_quiet_shutdown() and SSL_set_quiet_shutdown() do not return | |
52 | diagnostic information. | |
53 | ||
54 | SSL_CTX_get_quiet_shutdown() and SSL_get_quiet_shutdown return the current | |
55 | setting. | |
56 | ||
57 | =head1 SEE ALSO | |
58 | ||
b97fdb57 | 59 | L<ssl(7)>, L<SSL_shutdown(3)>, |
9b86974e RS |
60 | L<SSL_set_shutdown(3)>, L<SSL_new(3)>, |
61 | L<SSL_clear(3)>, L<SSL_free(3)> | |
cdd7c3ce | 62 | |
e2f92610 RS |
63 | =head1 COPYRIGHT |
64 | ||
c486283c | 65 | Copyright 2001-2018 The OpenSSL Project Authors. All Rights Reserved. |
e2f92610 RS |
66 | |
67 | Licensed under the OpenSSL license (the "License"). You may not use | |
68 | this file except in compliance with the License. You can obtain a copy | |
69 | in the file LICENSE in the source distribution or at | |
70 | L<https://www.openssl.org/source/license.html>. | |
71 | ||
72 | =cut |