libressl-SSL_get_ex_data_X509_STORE_CTX_idx3
Get ex_data index to access ssl structure from x509_store_ctx
Usage
SSL Library (libssl, -lssl) libcrypto
#include <openssl/ssl.h>
int
SSL_get_ex_data_X509_STORE_CTX_idx(void);
Overview
SSL_get_ex_data_X509_STORE_CTX_idx() returns the index number under which the pointer to the SSL object is stored into the X509_STORE_CTX object.
Whenever an X509_STORE_CTX object is created for the verification of the peer's certificate during a handshake, a pointer to the SSL object is stored into the X509_STORE_CTX object to identify the connection affected. To retrieve this pointer the X509_STORE_CTX_get_ex_data(3) function can be used with the correct index. This index is globally the same for all X509_STORE_CTX objects and can be retrieved using SSL_get_ex_data_X509_STORE_CTX_idx(). The index value is set when SSL_get_ex_data_X509_STORE_CTX_idx() is first called either by the application program directly or indirectly during other SSL setup functions or during the handshake.
The value depends on other index values defined for X509_STORE_CTX objects before the SSL index is created.
Return values
- ≥0
-
The index value to access the pointer.
- <0
-
An error occurred, check the error stack for a detailed error message.
Examples
The index returned from SSL_get_ex_data_X509_STORE_CTX_idx() provides access to SSL object for the connection during the verify_callback() when checking the peer's certificate. Check the example in SSL_CTX_set_verify(3).