SSL_CTX_GET0_PARAM

Section: OpenSSL (3SSL)
Updated: 2024-03-03
Index Return to Main Contents
 

NAME

SSL_CTX_get0_param, SSL_get0_param, SSL_CTX_set1_param, SSL_set1_param, SSL_CTX_set_purpose, SSL_CTX_set_trust, SSL_set_purpose, SSL_set_trust - get and set verification parameters  

SYNOPSIS

 #include <openssl/ssl.h>

 X509_VERIFY_PARAM *SSL_CTX_get0_param(SSL_CTX *ctx);
 X509_VERIFY_PARAM *SSL_get0_param(SSL *ssl);
 int SSL_CTX_set1_param(SSL_CTX *ctx, X509_VERIFY_PARAM *vpm);
 int SSL_set1_param(SSL *ssl, X509_VERIFY_PARAM *vpm);

 int SSL_CTX_set_purpose(SSL_CTX *ctx, int purpose);
 int SSL_set_purpose(SSL *ssl, int purpose);

 int SSL_CTX_set_trust(SSL_CTX *ctx, int trust);
 int SSL_set_trust(SSL *ssl, int trust);

 

DESCRIPTION

SSL_CTX_get0_param() and SSL_get0_param() retrieve an internal pointer to the verification parameters for ctx or ssl respectively. The returned pointer must not be freed by the calling application.

SSL_CTX_set1_param() and SSL_set1_param() set the verification parameters to vpm for ctx or ssl.

The functions SSL_CTX_set_purpose() and SSL_set_purpose() are shorthands which set the purpose parameter on the verification parameters object. These functions are equivalent to calling X509_VERIFY_PARAM_set_purpose() directly.

The functions SSL_CTX_set_trust() and SSL_set_trust() are similarly shorthands which set the trust parameter on the verification parameters object. These functions are equivalent to calling X509_VERIFY_PARAM_set_trust() directly.  

NOTES

Typically parameters are retrieved from an SSL_CTX or SSL structure using SSL_CTX_get0_param() or SSL_get0_param() and an application modifies them to suit its needs: for example to add a hostname check.  

RETURN VALUES

SSL_CTX_get0_param() and SSL_get0_param() return a pointer to an X509_VERIFY_PARAM structure.

SSL_CTX_set1_param(), SSL_set1_param(), SSL_CTX_set_purpose(), SSL_set_purpose(), SSL_CTX_set_trust() and SSL_set_trust() return 1 for success and 0 for failure.  

EXAMPLES

Check hostname matches ``www.foo.com'' in peer certificate:

 X509_VERIFY_PARAM *vpm = SSL_get0_param(ssl);
 X509_VERIFY_PARAM_set1_host(vpm, "www.foo.com", 0);

 

SEE ALSO

ssl(7), X509_VERIFY_PARAM_set_flags(3)  

HISTORY

These functions were added in OpenSSL 1.0.2.  

COPYRIGHT

Copyright 2015-2022 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 <https://www.openssl.org/source/license.html>.


 

Index

NAME
SYNOPSIS
DESCRIPTION
NOTES
RETURN VALUES
EXAMPLES
SEE ALSO
HISTORY
COPYRIGHT

This document was created by man2html, using the manual pages.
Time: 13:49:58 GMT, May 01, 2024