SSL_SESSION_get_ex_new_index.pod revision 160814
1269847Speter=pod
2269847Speter
3269847Speter=head1 NAME
4269847Speter
5269847SpeterSSL_SESSION_get_ex_new_index, SSL_SESSION_set_ex_data, SSL_SESSION_get_ex_data - internal application specific data functions
6269847Speter
7269847Speter=head1 SYNOPSIS
8269847Speter
9269847Speter #include <openssl/ssl.h>
10269847Speter
11269847Speter int SSL_SESSION_get_ex_new_index(long argl, void *argp,
12269847Speter                CRYPTO_EX_new *new_func,
13269847Speter                CRYPTO_EX_dup *dup_func,
14269847Speter                CRYPTO_EX_free *free_func);
15269847Speter
16269847Speter int SSL_SESSION_set_ex_data(SSL_SESSION *session, int idx, void *arg);
17269847Speter
18269847Speter void *SSL_SESSION_get_ex_data(const SSL_SESSION *session, int idx);
19269847Speter
20269847Speter typedef int new_func(void *parent, void *ptr, CRYPTO_EX_DATA *ad,
21269847Speter                int idx, long argl, void *argp);
22269847Speter typedef void free_func(void *parent, void *ptr, CRYPTO_EX_DATA *ad,
23269847Speter                int idx, long argl, void *argp);
24269847Speter typedef int dup_func(CRYPTO_EX_DATA *to, CRYPTO_EX_DATA *from, void *from_d,
25269847Speter                int idx, long argl, void *argp);
26269847Speter
27269847Speter=head1 DESCRIPTION
28269847Speter
29269847SpeterSeveral OpenSSL structures can have application specific data attached to them.
30269847SpeterThese functions are used internally by OpenSSL to manipulate application
31269847Speterspecific data attached to a specific structure.
32269847Speter
33269847SpeterSSL_SESSION_get_ex_new_index() is used to register a new index for application
34269847Speterspecific data.
35269847Speter
36269847SpeterSSL_SESSION_set_ex_data() is used to store application data at B<arg> for B<idx>
37269847Speterinto the B<session> object.
38269847Speter
39269847SpeterSSL_SESSION_get_ex_data() is used to retrieve the information for B<idx> from
40269847SpeterB<session>.
41269847Speter
42269847SpeterA detailed description for the B<*_get_ex_new_index()> functionality
43269847Spetercan be found in L<RSA_get_ex_new_index(3)|RSA_get_ex_new_index(3)>.
44269847SpeterThe B<*_get_ex_data()> and B<*_set_ex_data()> functionality is described in
45269847SpeterL<CRYPTO_set_ex_data(3)|CRYPTO_set_ex_data(3)>.
46269847Speter
47269847Speter=head1 WARNINGS
48269847Speter
49269847SpeterThe application data is only maintained for sessions held in memory. The
50269847Speterapplication data is not included when dumping the session with
51269847Speteri2d_SSL_SESSION() (and all functions indirectly calling the dump functions
52269847Speterlike PEM_write_SSL_SESSION() and PEM_write_bio_SSL_SESSION()) and can
53269847Spetertherefore not be restored.
54269847Speter
55269847Speter=head1 SEE ALSO
56269847Speter
57269847SpeterL<ssl(3)|ssl(3)>,
58269847SpeterL<RSA_get_ex_new_index(3)|RSA_get_ex_new_index(3)>,
59269847SpeterL<CRYPTO_set_ex_data(3)|CRYPTO_set_ex_data(3)>
60269847Speter
61269847Speter=cut
62269847Speter