summaryrefslogtreecommitdiff
path: root/lib/libcrypto/man/CRYPTO_set_ex_data.3
blob: 1be42dedd970a358117f7eef9490dca05651a404 (plain)
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
.Dd $Mdocdate: November 11 2015 $
.Dt CRYPTO_SET_EX_DATA 3
.Os
.Sh NAME
.Nm CRYPTO_set_ex_data ,
.Nm CRYPTO_get_ex_data
.Nd internal application specific data functions
.Sh SYNOPSIS
.In openssl/crypto.h
.Ft int
.Fo CRYPTO_set_ex_data
.Fa "CRYPTO_EX_DATA *r"
.Fa "int idx"
.Fa "void *arg"
.Fc
.Ft void *
.Fo CRYPTO_get_ex_data
.Fa "CRYPTO_EX_DATA *r"
.Fa "int idx"
.Fc
.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
These functions should only be used by applications to manipulate
.Vt CRYPTO_EX_DATA
structures passed to the
.Fn new_func ,
.Fn free_func ,
and
.Fn dup_func
callbacks: as passed to
.Xr RSA_get_ex_new_index 3
for example.
.Pp
.Fn CRYPTO_set_ex_data
is used to set application specific data, the data is supplied in the
.Fa arg
parameter and its precise meaning is up to the application.
.Pp
.Fn CRYPTO_get_ex_data
is used to retrieve application specific data.
The data is returned to the application, this will be the same value as
supplied to a previous
.Fn CRYPTO_set_ex_data
call.
.Sh RETURN VALUES
.Fn CRYPTO_set_ex_data
returns 1 on success or 0 on failure.
.Pp
.Fn CRYPTO_get_ex_data
returns the application data or 0 on failure.
0 may also be valid application data but currently it can only fail if
given an invalid
.Fa idx
parameter.
.Pp
On failure an error code can be obtained from
.Xr ERR_get_error 3 .
.Sh SEE ALSO
.Xr DH_get_ex_new_index 3 ,
.Xr DSA_get_ex_new_index 3 ,
.Xr RSA_get_ex_new_index 3
.Sh HISTORY
.Fn CRYPTO_set_ex_data
and
.Fn CRYPTO_get_ex_data
have been available since SSLeay 0.9.0.