]>
Commit | Line | Data |
---|---|---|
cc99526d RL |
1 | =pod |
2 | ||
3 | =head1 NAME | |
4 | ||
a18a31e4 | 5 | SSL_new, SSL_up_ref - create a new SSL structure for a connection |
cc99526d RL |
6 | |
7 | =head1 SYNOPSIS | |
8 | ||
9 | #include <openssl/ssl.h> | |
10 | ||
11 | SSL *SSL_new(SSL_CTX *ctx); | |
c5ebfcab | 12 | int SSL_up_ref(SSL *s); |
cc99526d RL |
13 | |
14 | =head1 DESCRIPTION | |
15 | ||
1e4e5492 UM |
16 | SSL_new() creates a new B<SSL> structure which is needed to hold the |
17 | data for a TLS/SSL connection. The new structure inherits the settings | |
45f55f6a | 18 | of the underlying context B<ctx>: connection method, |
a18a31e4 MC |
19 | options, verification settings, timeout settings. An B<SSL> structure is |
20 | reference counted. Creating an B<SSL> structure for the first time increments | |
21 | the reference count. Freeing it (using SSL_free) decrements it. When the | |
22 | reference count drops to zero, any memory or resources allocated to the B<SSL> | |
23 | structure are freed. SSL_up_ref() increments the reference count for an | |
24 | existing B<SSL> structure. | |
cc99526d RL |
25 | |
26 | =head1 RETURN VALUES | |
27 | ||
28 | The following return values can occur: | |
29 | ||
30 | =over 4 | |
31 | ||
32 | =item NULL | |
33 | ||
1e4e5492 UM |
34 | The creation of a new SSL structure failed. Check the error stack to |
35 | find out the reason. | |
cc99526d | 36 | |
1e4e5492 | 37 | =item Pointer to an SSL structure |
cc99526d RL |
38 | |
39 | The return value points to an allocated SSL structure. | |
40 | ||
c5ebfcab F |
41 | SSL_up_ref() returns 1 for success and 0 for failure. |
42 | ||
cc99526d RL |
43 | =back |
44 | ||
45 | =head1 SEE ALSO | |
46 | ||
9b86974e RS |
47 | L<SSL_free(3)>, L<SSL_clear(3)>, |
48 | L<SSL_CTX_set_options(3)>, | |
49 | L<SSL_get_SSL_CTX(3)>, | |
50 | L<ssl(3)> | |
cc99526d | 51 | |
e2f92610 RS |
52 | =head1 COPYRIGHT |
53 | ||
54 | Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. | |
55 | ||
56 | Licensed under the OpenSSL license (the "License"). You may not use | |
57 | this file except in compliance with the License. You can obtain a copy | |
58 | in the file LICENSE in the source distribution or at | |
59 | L<https://www.openssl.org/source/license.html>. | |
60 | ||
61 | =cut |