1BIO_GET_EX_NEW_INDEX(3ossl)         OpenSSL        BIO_GET_EX_NEW_INDEX(3ossl)
2
3
4

NAME

6       BIO_get_ex_new_index, BIO_set_ex_data, BIO_get_ex_data,
7       BIO_set_app_data, BIO_get_app_data, DH_get_ex_new_index,
8       DH_set_ex_data, DH_get_ex_data, DSA_get_ex_new_index, DSA_set_ex_data,
9       DSA_get_ex_data, EC_KEY_get_ex_new_index, EC_KEY_set_ex_data,
10       EC_KEY_get_ex_data, ENGINE_get_ex_new_index, ENGINE_set_ex_data,
11       ENGINE_get_ex_data, EVP_PKEY_get_ex_new_index, EVP_PKEY_set_ex_data,
12       EVP_PKEY_get_ex_data, RSA_get_ex_new_index, RSA_set_ex_data,
13       RSA_get_ex_data, RSA_set_app_data, RSA_get_app_data,
14       SSL_get_ex_new_index, SSL_set_ex_data, SSL_get_ex_data,
15       SSL_set_app_data, SSL_get_app_data, SSL_CTX_get_ex_new_index,
16       SSL_CTX_set_ex_data, SSL_CTX_get_ex_data, SSL_CTX_set_app_data,
17       SSL_CTX_get_app_data, SSL_SESSION_get_ex_new_index,
18       SSL_SESSION_set_ex_data, SSL_SESSION_get_ex_data,
19       SSL_SESSION_set_app_data, SSL_SESSION_get_app_data,
20       UI_get_ex_new_index, UI_set_ex_data, UI_get_ex_data, UI_set_app_data,
21       UI_get_app_data, X509_STORE_CTX_get_ex_new_index,
22       X509_STORE_CTX_set_ex_data, X509_STORE_CTX_get_ex_data,
23       X509_STORE_CTX_set_app_data, X509_STORE_CTX_get_app_data,
24       X509_STORE_get_ex_new_index, X509_STORE_set_ex_data,
25       X509_STORE_get_ex_data, X509_get_ex_new_index, X509_set_ex_data,
26       X509_get_ex_data - application-specific data
27

SYNOPSIS

29        #include <openssl/x509.h>
30
31        int TYPE_get_ex_new_index(long argl, void *argp,
32                                  CRYPTO_EX_new *new_func,
33                                  CRYPTO_EX_dup *dup_func,
34                                  CRYPTO_EX_free *free_func);
35
36        int TYPE_set_ex_data(TYPE *d, int idx, void *arg);
37
38        void *TYPE_get_ex_data(const TYPE *d, int idx);
39
40        #define TYPE_set_app_data(TYPE *d, void *arg)
41        #define TYPE_get_app_data(TYPE *d)
42
43       The following functions have been deprecated since OpenSSL 3.0, and can
44       be hidden entirely by defining OPENSSL_API_COMPAT with a suitable
45       version value, see openssl_user_macros(7):
46
47        int DH_get_ex_new_index(long argl, void *argp, CRYPTO_EX_new *new_func,
48                                CRYPTO_EX_dup *dup_func, CRYPTO_EX_free *free_func);
49        int DH_set_ex_data(DH *type, int idx, void *arg);
50        void *DH_get_ex_data(DH *type, int idx);
51        int DSA_get_ex_new_index(long argl, void *argp, CRYPTO_EX_new *new_func,
52                                 CRYPTO_EX_dup *dup_func, CRYPTO_EX_free *free_func);
53        int DSA_set_ex_data(DSA *type, int idx, void *arg);
54        void *DSA_get_ex_data(DSA *type, int idx);
55        int EC_KEY_get_ex_new_index(long argl, void *argp, CRYPTO_EX_new *new_func,
56                                    CRYPTO_EX_dup *dup_func, CRYPTO_EX_free *free_func);
57        int EC_KEY_set_ex_data(EC_KEY *type, int idx, void *arg);
58        void *EC_KEY_get_ex_data(EC_KEY *type, int idx);
59        int RSA_get_ex_new_index(long argl, void *argp, CRYPTO_EX_new *new_func,
60                                 CRYPTO_EX_dup *dup_func, CRYPTO_EX_free *free_func);
61        int RSA_set_ex_data(RSA *type, int idx, void *arg);
62        void *RSA_get_ex_data(RSA *type, int idx);
63        int RSA_set_app_data(RSA *type, void *arg);
64        void *RSA_get_app_data(RSA *type);
65        int ENGINE_get_ex_new_index(long argl, void *argp, CRYPTO_EX_new *new_func,
66                                    CRYPTO_EX_dup *dup_func, CRYPTO_EX_free *free_func);
67        int ENGINE_set_ex_data(ENGINE *type, int idx, void *arg);
68        void *ENGINE_get_ex_data(ENGINE *type, int idx);
69

DESCRIPTION

71       In the description here, TYPE is used a placeholder for any of the
72       OpenSSL datatypes listed in CRYPTO_get_ex_new_index(3).
73
74       All functions with a TYPE of DH, DSA, RSA and EC_KEY are deprecated.
75       Applications should instead use EVP_PKEY_set_ex_data(),
76       EVP_PKEY_get_ex_data() and EVP_PKEY_get_ex_new_index().
77
78       All functions with a TYPE of ENGINE are deprecated.  Applications using
79       engines should be replaced by providers.
80
81       These functions handle application-specific data for OpenSSL data
82       structures.
83
84       TYPE_get_ex_new_index() is a macro that calls CRYPTO_get_ex_new_index()
85       with the correct index value.
86
87       TYPE_set_ex_data() is a function that calls CRYPTO_set_ex_data() with
88       an offset into the opaque exdata part of the TYPE object.
89
90       TYPE_get_ex_data() is a function that calls CRYPTO_get_ex_data() with
91       an offset into the opaque exdata part of the TYPE object.
92
93       For compatibility with previous releases, the exdata index of zero is
94       reserved for "application data." There are two convenience functions
95       for this.  TYPE_set_app_data() is a macro that invokes
96       TYPE_set_ex_data() with idx set to zero.  TYPE_get_app_data() is a
97       macro that invokes TYPE_get_ex_data() with idx set to zero.
98

RETURN VALUES

100       TYPE_get_ex_new_index() returns a new index on success or -1 on error.
101
102       TYPE_set_ex_data() returns 1 on success or 0 on error.
103
104       TYPE_get_ex_data() returns the application data or NULL if an error
105       occurred.
106

SEE ALSO

108       CRYPTO_get_ex_new_index(3).
109

HISTORY

111       The functions DH_get_ex_new_index(), DH_set_ex_data(),
112       DH_get_ex_data(), DSA_get_ex_new_index(), DSA_set_ex_data(),
113       DSA_get_ex_data(), EC_KEY_get_ex_new_index(), EC_KEY_set_ex_data(),
114       EC_KEY_get_ex_data(), ENGINE_get_ex_new_index(), ENGINE_set_ex_data(),
115       ENGINE_get_ex_data(), RSA_get_ex_new_index(), RSA_set_ex_data(),
116       RSA_get_ex_data(), RSA_set_app_data() and RSA_get_app_data() were
117       deprecated in OpenSSL 3.0.
118
120       Copyright 2015-2021 The OpenSSL Project Authors. All Rights Reserved.
121
122       Licensed under the Apache License 2.0 (the "License").  You may not use
123       this file except in compliance with the License.  You can obtain a copy
124       in the file LICENSE in the source distribution or at
125       <https://www.openssl.org/source/license.html>.
126
127
128
1293.0.9                             2023-07-27       BIO_GET_EX_NEW_INDEX(3ossl)
Impressum