12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879 |
- =pod
- =head1 NAME
- SSL_get_peer_certificate,
- SSL_get0_peer_certificate,
- SSL_get1_peer_certificate - get the X509 certificate of the peer
- =head1 SYNOPSIS
- #include <openssl/ssl.h>
- X509 *SSL_get_peer_certificate(const SSL *ssl);
- X509 *SSL_get0_peer_certificate(const SSL *ssl);
- X509 *SSL_get1_peer_certificate(const SSL *ssl);
- =head1 DESCRIPTION
- These functions return a pointer to the X509 certificate the
- peer presented. If the peer did not present a certificate, NULL is returned.
- =head1 NOTES
- Due to the protocol definition, a TLS/SSL server will always send a
- certificate, if present. A client will only send a certificate when
- explicitly requested to do so by the server (see
- L<SSL_CTX_set_verify(3)>). If an anonymous cipher
- is used, no certificates are sent.
- That a certificate is returned does not indicate information about the
- verification state, use L<SSL_get_verify_result(3)>
- to check the verification state.
- The reference count of the X509 object returned by SSL_get1_peer_certificate()
- is incremented by one, so that it will not be destroyed when the session
- containing the peer certificate is freed. The X509 object must be explicitly
- freed using X509_free().
- The reference count of the X509 object returned by SSL_get0_peer_certificate()
- is not incremented, and must not be freed.
- SSL_get_peer_certificate() is an alias of SSL_get1_peer_certificate().
- =head1 RETURN VALUES
- The following return values can occur:
- =over 4
- =item NULL
- No certificate was presented by the peer or no connection was established.
- =item Pointer to an X509 certificate
- The return value points to the certificate presented by the peer.
- =back
- =head1 SEE ALSO
- L<ssl(7)>, L<SSL_get_verify_result(3)>,
- L<SSL_CTX_set_verify(3)>
- =head1 HISTORY
- SSL_get0_peer_certificate() and SSL_get1_peer_certificate() were added in 3.0.0.
- SSL_get_peer_certificate() was deprecated in 3.0.0.
- =head1 COPYRIGHT
- Copyright 2000-2020 The OpenSSL Project Authors. All Rights Reserved.
- Licensed under the Apache License 2.0 (the "License"). You may not use
- this file except in compliance with the License. You can obtain a copy
- in the file LICENSE in the source distribution or at
- L<https://www.openssl.org/source/license.html>.
- =cut
|