172613Skris=pod 272613Skris 372613Skris=head1 NAME 472613Skris 572613SkrisSSL_SESSION_get_ex_new_index, SSL_SESSION_set_ex_data, SSL_SESSION_get_ex_data - internal application specific data functions 672613Skris 772613Skris=head1 SYNOPSIS 872613Skris 972613Skris #include <openssl/ssl.h> 1072613Skris 1172613Skris int SSL_SESSION_get_ex_new_index(long argl, void *argp, 1272613Skris CRYPTO_EX_new *new_func, 1372613Skris CRYPTO_EX_dup *dup_func, 1472613Skris CRYPTO_EX_free *free_func); 1572613Skris 1672613Skris int SSL_SESSION_set_ex_data(SSL_SESSION *session, int idx, void *arg); 1772613Skris 18160814Ssimon void *SSL_SESSION_get_ex_data(const SSL_SESSION *session, int idx); 1972613Skris 2072613Skris typedef int new_func(void *parent, void *ptr, CRYPTO_EX_DATA *ad, 2172613Skris int idx, long argl, void *argp); 2272613Skris typedef void free_func(void *parent, void *ptr, CRYPTO_EX_DATA *ad, 2372613Skris int idx, long argl, void *argp); 2472613Skris typedef int dup_func(CRYPTO_EX_DATA *to, CRYPTO_EX_DATA *from, void *from_d, 2572613Skris int idx, long argl, void *argp); 2672613Skris 2772613Skris=head1 DESCRIPTION 2872613Skris 2972613SkrisSeveral OpenSSL structures can have application specific data attached to them. 3072613SkrisThese functions are used internally by OpenSSL to manipulate application 3172613Skrisspecific data attached to a specific structure. 3272613Skris 3372613SkrisSSL_SESSION_get_ex_new_index() is used to register a new index for application 3472613Skrisspecific data. 3572613Skris 3672613SkrisSSL_SESSION_set_ex_data() is used to store application data at B<arg> for B<idx> 3772613Skrisinto the B<session> object. 3872613Skris 3972613SkrisSSL_SESSION_get_ex_data() is used to retrieve the information for B<idx> from 4072613SkrisB<session>. 4172613Skris 4272613SkrisA detailed description for the B<*_get_ex_new_index()> functionality 4379998Skriscan be found in L<RSA_get_ex_new_index(3)|RSA_get_ex_new_index(3)>. 4472613SkrisThe B<*_get_ex_data()> and B<*_set_ex_data()> functionality is described in 4572613SkrisL<CRYPTO_set_ex_data(3)|CRYPTO_set_ex_data(3)>. 4672613Skris 4772613Skris=head1 WARNINGS 4872613Skris 4972613SkrisThe application data is only maintained for sessions held in memory. The 5072613Skrisapplication data is not included when dumping the session with 5172613Skrisi2d_SSL_SESSION() (and all functions indirectly calling the dump functions 5272613Skrislike PEM_write_SSL_SESSION() and PEM_write_bio_SSL_SESSION()) and can 5372613Skristherefore not be restored. 5472613Skris 5572613Skris=head1 SEE ALSO 5672613Skris 5772613SkrisL<ssl(3)|ssl(3)>, 5872613SkrisL<RSA_get_ex_new_index(3)|RSA_get_ex_new_index(3)>, 5972613SkrisL<CRYPTO_set_ex_data(3)|CRYPTO_set_ex_data(3)> 6072613Skris 6172613Skris=cut 62