- NAME
- SYNOPSIS
- DESCRIPTION
- NOTES
- EXAMPLE
- RETURN VALUES
- SEE ALSO
- HISTORY

# NAME

SSL_CTX_get0_param, SSL_get0_param, SSL_CTX_set1_param, SSL_set1_param - 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)

# 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.

# 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.

# EXAMPLE

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);

# RETURN VALUES

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

`SSL_CTX_set1_param()` and `SSL_set1_param()` return 1 for success and 0 for failure.

# SEE ALSO

X509_VERIFY_PARAM_set_flags

# HISTORY

These functions were first added to OpenSSL 1.0.2.