1.\" $OpenBSD: SSL_copy_session_id.3,v 1.7 2019/06/12 09:36:30 schwarze Exp $
2.\"
3.\" Copyright (c) 2016 Ingo Schwarze <schwarze@openbsd.org>
4.\"
5.\" Permission to use, copy, modify, and distribute this software for any
6.\" purpose with or without fee is hereby granted, provided that the above
7.\" copyright notice and this permission notice appear in all copies.
8.\"
9.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
10.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
15.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16.\"
17.Dd $Mdocdate: June 12 2019 $
18.Dt SSL_COPY_SESSION_ID 3
19.Os
20.Sh NAME
21.Nm SSL_copy_session_id
22.Nd copy session details between SSL objects
23.Sh SYNOPSIS
24.In openssl/ssl.h
25.Ft int
26.Fo SSL_copy_session_id
27.Fa "SSL *to"
28.Fa "const SSL *from"
29.Fc
30.Sh DESCRIPTION
31.Fn SSL_copy_session_id
32copies the following data from
33.Fa from
34to
35.Fa to :
36.Bl -dash
37.It
38the pointer to the
39.Vt SSL_SESSION
40object, incrementing its reference count by 1
41.It
42the pointer to the
43.Vt SSL_METHOD
44object; if that changes the method, protocol-specific data is
45reinitialized
46.It
47the pointer to the
48.Vt CERT
49object, incrementing its reference count by 1
50.It
51the session ID context
52.El
53.Pp
54This function is used internally by
55.Xr SSL_dup 3
56and by
57.Xr BIO_ssl_copy_session_id 3 .
58.Sh RETURN VALUES
59.Fn SSL_copy_session_id
60returns 1 on success and 0 on error.
61.Sh SEE ALSO
62.Xr BIO_ssl_copy_session_id 3 ,
63.Xr ssl 3 ,
64.Xr SSL_dup 3 ,
65.Xr SSL_get_session 3 ,
66.Xr SSL_SESSION_get_id 3 ,
67.Xr SSL_SESSION_new 3 ,
68.Xr SSL_set_session 3 ,
69.Xr SSL_set_session_id_context 3
70.Sh HISTORY
71.Fn SSL_copy_session_id
72appeared in SSLeay 0.4 or earlier and has been available since
73.Ox 2.4 .
74.Sh BUGS
75Failures of
76.Xr CRYPTO_add 3
77are silently ignored and may leave
78.Fa to
79in an invalid or inconsistent state.
80