1*1dcdf01fSchristos=pod
2*1dcdf01fSchristos
3*1dcdf01fSchristos=head1 NAME
4*1dcdf01fSchristos
5*1dcdf01fSchristosSSL_get_peer_tmp_key, SSL_get_server_tmp_key, SSL_get_tmp_key - get information
6*1dcdf01fSchristosabout temporary keys used during a handshake
7*1dcdf01fSchristos
8*1dcdf01fSchristos=head1 SYNOPSIS
9*1dcdf01fSchristos
10*1dcdf01fSchristos #include <openssl/ssl.h>
11*1dcdf01fSchristos
12*1dcdf01fSchristos long SSL_get_peer_tmp_key(SSL *ssl, EVP_PKEY **key);
13*1dcdf01fSchristos long SSL_get_server_tmp_key(SSL *ssl, EVP_PKEY **key);
14*1dcdf01fSchristos long SSL_get_tmp_key(SSL *ssl, EVP_PKEY **key);
15*1dcdf01fSchristos
16*1dcdf01fSchristos=head1 DESCRIPTION
17*1dcdf01fSchristos
18*1dcdf01fSchristosSSL_get_peer_tmp_key() returns the temporary key provided by the peer and
19*1dcdf01fSchristosused during key exchange. For example, if ECDHE is in use, then this represents
20*1dcdf01fSchristosthe peer's public ECDHE key. On success a pointer to the key is stored in
21*1dcdf01fSchristosB<*key>. It is the caller's responsibility to free this key after use using
22*1dcdf01fSchristosL<EVP_PKEY_free(3)>.
23*1dcdf01fSchristos
24*1dcdf01fSchristosSSL_get_server_tmp_key() is a backwards compatibility alias for
25*1dcdf01fSchristosSSL_get_peer_tmp_key().
26*1dcdf01fSchristosUnder that name it worked just on the client side of the connection, its
27*1dcdf01fSchristosbehaviour on the server end is release-dependent.
28*1dcdf01fSchristos
29*1dcdf01fSchristosSSL_get_tmp_key() returns the equivalent information for the local
30*1dcdf01fSchristosend of the connection.
31*1dcdf01fSchristos
32*1dcdf01fSchristos=head1 RETURN VALUES
33*1dcdf01fSchristos
34*1dcdf01fSchristosAll these functions return 1 on success and 0 otherwise.
35*1dcdf01fSchristos
36*1dcdf01fSchristos=head1 NOTES
37*1dcdf01fSchristos
38*1dcdf01fSchristosThis function is implemented as a macro.
39*1dcdf01fSchristos
40*1dcdf01fSchristos=head1 SEE ALSO
41*1dcdf01fSchristos
42*1dcdf01fSchristosL<ssl(7)>, L<EVP_PKEY_free(3)>
43*1dcdf01fSchristos
44*1dcdf01fSchristos=head1 COPYRIGHT
45*1dcdf01fSchristos
46*1dcdf01fSchristosCopyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved.
47*1dcdf01fSchristos
48*1dcdf01fSchristosLicensed under the OpenSSL license (the "License").  You may not use
49*1dcdf01fSchristosthis file except in compliance with the License.  You can obtain a copy
50*1dcdf01fSchristosin the file LICENSE in the source distribution or at
51*1dcdf01fSchristosL<https://www.openssl.org/source/license.html>.
52*1dcdf01fSchristos
53*1dcdf01fSchristos=cut
54