1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
|
.\"
.\" $OpenBSD: SSL_get_ex_new_index.3,v 1.1 2016/11/05 15:32:20 schwarze Exp $
.\"
.Dd $Mdocdate: November 5 2016 $
.Dt SSL_GET_EX_NEW_INDEX 3
.Os
.Sh NAME
.Nm SSL_get_ex_new_index ,
.Nm SSL_set_ex_data ,
.Nm SSL_get_ex_data
.Nd internal application specific data functions
.Sh SYNOPSIS
.In openssl/ssl.h
.Ft int
.Fo SSL_get_ex_new_index
.Fa "long argl"
.Fa "void *argp"
.Fa "CRYPTO_EX_new *new_func"
.Fa "CRYPTO_EX_dup *dup_func"
.Fa "CRYPTO_EX_free *free_func"
.Fc
.Ft int
.Fn SSL_set_ex_data "SSL *ssl" "int idx" "void *arg"
.Ft void *
.Fn SSL_get_ex_data "const SSL *ssl" "int idx"
.Bd -literal
typedef int new_func(void *parent, void *ptr, CRYPTO_EX_DATA *ad,
int idx, long argl, void *argp);
typedef void free_func(void *parent, void *ptr, CRYPTO_EX_DATA *ad,
int idx, long argl, void *argp);
typedef int dup_func(CRYPTO_EX_DATA *to, CRYPTO_EX_DATA *from, void *from_d,
int idx, long argl, void *argp);
.Ed
.Sh DESCRIPTION
Several OpenSSL structures can have application specific data attached to them.
These functions are used internally by OpenSSL to manipulate application
specific data attached to a specific structure.
.Pp
.Fn SSL_get_ex_new_index
is used to register a new index for application specific data.
.Pp
.Fn SSL_set_ex_data
is used to store application data at
.Fa arg
for
.Fa idx
into the
.Fa ssl
object.
.Pp
.Fn SSL_get_ex_data
is used to retrieve the information for
.Fa idx
from
.Fa ssl .
.Pp
A detailed description for the
.Fn *_get_ex_new_index
functionality can be found in
.Xr RSA_get_ex_new_index 3 .
The
.Fn *_get_ex_data
and
.Fn *_set_ex_data
functionality is described in
.Xr CRYPTO_set_ex_data 3 .
.Sh EXAMPLES
An example of how to use the functionality is included in the example
.Fn verify_callback
in
.Xr SSL_CTX_set_verify 3 .
.Sh SEE ALSO
.Xr CRYPTO_set_ex_data 3 ,
.Xr RSA_get_ex_new_index 3 ,
.Xr ssl 3 ,
.Xr SSL_CTX_set_verify 3
|