
1: =pod 2: 3: =head1 NAME 4: 5: SSL_SESSION_get_ex_new_index, SSL_SESSION_set_ex_data, SSL_SESSION_get_ex_data - internal application specific data functions 6: 7: =head1 SYNOPSIS 8: 9: #include <openssl/ssl.h> 10: 11: int SSL_SESSION_get_ex_new_index(long argl, void *argp, 12: CRYPTO_EX_new *new_func, 13: CRYPTO_EX_dup *dup_func, 14: CRYPTO_EX_free *free_func); 15: 16: int SSL_SESSION_set_ex_data(SSL_SESSION *session, int idx, void *arg); 17: 18: void *SSL_SESSION_get_ex_data(const SSL_SESSION *session, int idx); 19: 20: typedef int new_func(void *parent, void *ptr, CRYPTO_EX_DATA *ad, 21: int idx, long argl, void *argp); 22: typedef void free_func(void *parent, void *ptr, CRYPTO_EX_DATA *ad, 23: int idx, long argl, void *argp); 24: typedef int dup_func(CRYPTO_EX_DATA *to, CRYPTO_EX_DATA *from, void *from_d, 25: int idx, long argl, void *argp); 26: 27: =head1 DESCRIPTION 28: 29: Several OpenSSL structures can have application specific data attached to them. 30: These functions are used internally by OpenSSL to manipulate application 31: specific data attached to a specific structure. 32: 33: SSL_SESSION_get_ex_new_index() is used to register a new index for application 34: specific data. 35: 36: SSL_SESSION_set_ex_data() is used to store application data at B<arg> for B<idx> 37: into the B<session> object. 38: 39: SSL_SESSION_get_ex_data() is used to retrieve the information for B<idx> from 40: B<session>. 41: 42: A detailed description for the B<*_get_ex_new_index()> functionality 43: can be found in L<RSA_get_ex_new_index(3)|RSA_get_ex_new_index(3)>. 44: The B<*_get_ex_data()> and B<*_set_ex_data()> functionality is described in 45: L<CRYPTO_set_ex_data(3)|CRYPTO_set_ex_data(3)>. 46: 47: =head1 WARNINGS 48: 49: The application data is only maintained for sessions held in memory. The 50: application data is not included when dumping the session with 51: i2d_SSL_SESSION() (and all functions indirectly calling the dump functions 52: like PEM_write_SSL_SESSION() and PEM_write_bio_SSL_SESSION()) and can 53: therefore not be restored. 54: 55: =head1 SEE ALSO 56: 57: L<ssl(3)|ssl(3)>, 58: L<RSA_get_ex_new_index(3)|RSA_get_ex_new_index(3)>, 59: L<CRYPTO_set_ex_data(3)|CRYPTO_set_ex_data(3)> 60: 61: =cut