xref: /openbsd-src/lib/libcrypto/hidden/openssl/x509.h (revision fc405d53b73a2d73393cb97f684863d17b583e38)
1 /* $OpenBSD: x509.h,v 1.2 2023/02/23 18:12:32 job Exp $ */
2 /*
3  * Copyright (c) 2022 Bob Beck <beck@openbsd.org>
4  *
5  * Permission to use, copy, modify, and distribute this software for any
6  * purpose with or without fee is hereby granted, provided that the above
7  * copyright notice and this permission notice appear in all copies.
8  *
9  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
10  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
15  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16  */
17 
18 #ifndef _LIBCRYPTO_X509_H
19 #define _LIBCRYPTO_X509_H
20 
21 #include_next <openssl/x509.h>
22 #include "crypto_namespace.h"
23 
24 LCRYPTO_USED(X509_CRL_up_ref);
25 LCRYPTO_USED(i2d_re_X509_CRL_tbs);
26 LCRYPTO_USED(X509_get_X509_PUBKEY);
27 LCRYPTO_USED(X509_verify_cert_error_string);
28 LCRYPTO_USED(X509_verify);
29 LCRYPTO_USED(X509_REQ_verify);
30 LCRYPTO_USED(NETSCAPE_SPKI_verify);
31 LCRYPTO_USED(NETSCAPE_SPKI_b64_decode);
32 LCRYPTO_USED(NETSCAPE_SPKI_b64_encode);
33 LCRYPTO_USED(NETSCAPE_SPKI_get_pubkey);
34 LCRYPTO_USED(NETSCAPE_SPKI_set_pubkey);
35 LCRYPTO_USED(X509_sign);
36 LCRYPTO_USED(X509_sign_ctx);
37 LCRYPTO_USED(X509_REQ_sign);
38 LCRYPTO_USED(X509_REQ_sign_ctx);
39 LCRYPTO_USED(X509_CRL_sign);
40 LCRYPTO_USED(X509_CRL_sign_ctx);
41 LCRYPTO_USED(NETSCAPE_SPKI_sign);
42 LCRYPTO_USED(X509_pubkey_digest);
43 LCRYPTO_USED(X509_digest);
44 LCRYPTO_USED(X509_CRL_digest);
45 LCRYPTO_USED(X509_REQ_digest);
46 LCRYPTO_USED(X509_NAME_digest);
47 LCRYPTO_USED(d2i_X509_fp);
48 LCRYPTO_USED(i2d_X509_fp);
49 LCRYPTO_USED(d2i_X509_CRL_fp);
50 LCRYPTO_USED(i2d_X509_CRL_fp);
51 LCRYPTO_USED(d2i_X509_REQ_fp);
52 LCRYPTO_USED(i2d_X509_REQ_fp);
53 LCRYPTO_USED(d2i_RSAPrivateKey_fp);
54 LCRYPTO_USED(i2d_RSAPrivateKey_fp);
55 LCRYPTO_USED(d2i_RSAPublicKey_fp);
56 LCRYPTO_USED(i2d_RSAPublicKey_fp);
57 LCRYPTO_USED(d2i_DSAPrivateKey_fp);
58 LCRYPTO_USED(i2d_DSAPrivateKey_fp);
59 LCRYPTO_USED(d2i_ECPrivateKey_fp);
60 LCRYPTO_USED(i2d_ECPrivateKey_fp);
61 LCRYPTO_USED(d2i_PKCS8_fp);
62 LCRYPTO_USED(i2d_PKCS8_fp);
63 LCRYPTO_USED(d2i_PKCS8_PRIV_KEY_INFO_fp);
64 LCRYPTO_USED(i2d_PKCS8_PRIV_KEY_INFO_fp);
65 LCRYPTO_USED(i2d_PKCS8PrivateKeyInfo_fp);
66 LCRYPTO_USED(i2d_PrivateKey_fp);
67 LCRYPTO_USED(d2i_PrivateKey_fp);
68 LCRYPTO_USED(d2i_X509_bio);
69 LCRYPTO_USED(i2d_X509_bio);
70 LCRYPTO_USED(d2i_X509_CRL_bio);
71 LCRYPTO_USED(i2d_X509_CRL_bio);
72 LCRYPTO_USED(d2i_X509_REQ_bio);
73 LCRYPTO_USED(i2d_X509_REQ_bio);
74 LCRYPTO_USED(d2i_RSAPrivateKey_bio);
75 LCRYPTO_USED(i2d_RSAPrivateKey_bio);
76 LCRYPTO_USED(d2i_RSAPublicKey_bio);
77 LCRYPTO_USED(i2d_RSAPublicKey_bio);
78 LCRYPTO_USED(d2i_DSAPrivateKey_bio);
79 LCRYPTO_USED(i2d_DSAPrivateKey_bio);
80 LCRYPTO_USED(d2i_ECPrivateKey_bio);
81 LCRYPTO_USED(i2d_ECPrivateKey_bio);
82 LCRYPTO_USED(d2i_PKCS8_bio);
83 LCRYPTO_USED(i2d_PKCS8_bio);
84 LCRYPTO_USED(d2i_PKCS8_PRIV_KEY_INFO_bio);
85 LCRYPTO_USED(i2d_PKCS8_PRIV_KEY_INFO_bio);
86 LCRYPTO_USED(i2d_PKCS8PrivateKeyInfo_bio);
87 LCRYPTO_USED(i2d_PrivateKey_bio);
88 LCRYPTO_USED(d2i_PrivateKey_bio);
89 LCRYPTO_USED(X509_cmp_time);
90 LCRYPTO_USED(X509_cmp_current_time);
91 LCRYPTO_USED(X509_time_adj);
92 LCRYPTO_USED(X509_time_adj_ex);
93 LCRYPTO_USED(X509_gmtime_adj);
94 LCRYPTO_USED(X509_get_default_cert_area);
95 LCRYPTO_USED(X509_get_default_cert_dir);
96 LCRYPTO_USED(X509_get_default_cert_file);
97 LCRYPTO_USED(X509_get_default_cert_dir_env);
98 LCRYPTO_USED(X509_get_default_cert_file_env);
99 LCRYPTO_USED(X509_get_default_private_dir);
100 LCRYPTO_USED(X509_to_X509_REQ);
101 LCRYPTO_USED(X509_REQ_to_X509);
102 LCRYPTO_USED(X509_get_pubkey_parameters);
103 LCRYPTO_USED(X509_TRUST_set_default);
104 LCRYPTO_USED(X509_TRUST_set);
105 LCRYPTO_USED(X509_NAME_oneline);
106 LCRYPTO_USED(X509_get0_extensions);
107 LCRYPTO_USED(X509_get0_tbs_sigalg);
108 LCRYPTO_USED(X509_get0_uids);
109 LCRYPTO_USED(X509_set_version);
110 LCRYPTO_USED(X509_get_version);
111 LCRYPTO_USED(X509_set_serialNumber);
112 LCRYPTO_USED(X509_get_serialNumber);
113 LCRYPTO_USED(X509_get0_serialNumber);
114 LCRYPTO_USED(X509_set_issuer_name);
115 LCRYPTO_USED(X509_get_issuer_name);
116 LCRYPTO_USED(X509_set_subject_name);
117 LCRYPTO_USED(X509_get_subject_name);
118 LCRYPTO_USED(X509_set_notBefore);
119 LCRYPTO_USED(X509_set1_notBefore);
120 LCRYPTO_USED(X509_set_notAfter);
121 LCRYPTO_USED(X509_set1_notAfter);
122 LCRYPTO_USED(X509_get0_notBefore);
123 LCRYPTO_USED(X509_getm_notBefore);
124 LCRYPTO_USED(X509_get0_notAfter);
125 LCRYPTO_USED(X509_getm_notAfter);
126 LCRYPTO_USED(X509_set_pubkey);
127 LCRYPTO_USED(X509_get_pubkey);
128 LCRYPTO_USED(X509_get0_pubkey);
129 LCRYPTO_USED(X509_get0_pubkey_bitstr);
130 LCRYPTO_USED(X509_certificate_type);
131 LCRYPTO_USED(X509_get_signature_type);
132 LCRYPTO_USED(X509_REQ_set_version);
133 LCRYPTO_USED(X509_REQ_get_version);
134 LCRYPTO_USED(X509_REQ_set_subject_name);
135 LCRYPTO_USED(X509_REQ_get_subject_name);
136 LCRYPTO_USED(X509_REQ_set_pubkey);
137 LCRYPTO_USED(X509_REQ_get_pubkey);
138 LCRYPTO_USED(i2d_re_X509_REQ_tbs);
139 LCRYPTO_USED(X509_REQ_get0_pubkey);
140 LCRYPTO_USED(X509_REQ_extension_nid);
141 LCRYPTO_USED(X509_REQ_get_extension_nids);
142 LCRYPTO_USED(X509_REQ_set_extension_nids);
143 LCRYPTO_USED(X509_REQ_get_extensions);
144 LCRYPTO_USED(X509_REQ_add_extensions_nid);
145 LCRYPTO_USED(X509_REQ_add_extensions);
146 LCRYPTO_USED(X509_REQ_get_attr_count);
147 LCRYPTO_USED(X509_REQ_get_attr_by_NID);
148 LCRYPTO_USED(X509_REQ_get_attr_by_OBJ);
149 LCRYPTO_USED(X509_REQ_get_attr);
150 LCRYPTO_USED(X509_REQ_delete_attr);
151 LCRYPTO_USED(X509_REQ_add1_attr);
152 LCRYPTO_USED(X509_REQ_add1_attr_by_OBJ);
153 LCRYPTO_USED(X509_REQ_add1_attr_by_NID);
154 LCRYPTO_USED(X509_REQ_add1_attr_by_txt);
155 LCRYPTO_USED(X509_CRL_set_version);
156 LCRYPTO_USED(X509_CRL_set_issuer_name);
157 LCRYPTO_USED(X509_CRL_set_lastUpdate);
158 LCRYPTO_USED(X509_CRL_set1_lastUpdate);
159 LCRYPTO_USED(X509_CRL_set_nextUpdate);
160 LCRYPTO_USED(X509_CRL_set1_nextUpdate);
161 LCRYPTO_USED(X509_CRL_sort);
162 LCRYPTO_USED(X509_REVOKED_get0_extensions);
163 LCRYPTO_USED(X509_REVOKED_get0_revocationDate);
164 LCRYPTO_USED(X509_REVOKED_get0_serialNumber);
165 LCRYPTO_USED(X509_REVOKED_set_revocationDate);
166 LCRYPTO_USED(X509_REVOKED_set_serialNumber);
167 LCRYPTO_USED(X509_REQ_check_private_key);
168 LCRYPTO_USED(X509_check_private_key);
169 LCRYPTO_USED(X509_issuer_and_serial_cmp);
170 LCRYPTO_USED(X509_issuer_and_serial_hash);
171 LCRYPTO_USED(X509_issuer_name_cmp);
172 LCRYPTO_USED(X509_issuer_name_hash);
173 LCRYPTO_USED(X509_subject_name_cmp);
174 LCRYPTO_USED(X509_subject_name_hash);
175 LCRYPTO_USED(X509_issuer_name_hash_old);
176 LCRYPTO_USED(X509_subject_name_hash_old);
177 LCRYPTO_USED(X509_cmp);
178 LCRYPTO_USED(X509_NAME_cmp);
179 LCRYPTO_USED(X509_NAME_hash);
180 LCRYPTO_USED(X509_NAME_hash_old);
181 LCRYPTO_USED(X509_CRL_cmp);
182 LCRYPTO_USED(X509_CRL_match);
183 LCRYPTO_USED(X509_NAME_entry_count);
184 LCRYPTO_USED(X509_NAME_get_text_by_NID);
185 LCRYPTO_USED(X509_NAME_get_text_by_OBJ);
186 LCRYPTO_USED(X509_NAME_get_index_by_NID);
187 LCRYPTO_USED(X509_NAME_get_index_by_OBJ);
188 LCRYPTO_USED(X509_NAME_get_entry);
189 LCRYPTO_USED(X509_NAME_delete_entry);
190 LCRYPTO_USED(X509_NAME_add_entry);
191 LCRYPTO_USED(X509_NAME_add_entry_by_OBJ);
192 LCRYPTO_USED(X509_NAME_add_entry_by_NID);
193 LCRYPTO_USED(X509_NAME_ENTRY_create_by_txt);
194 LCRYPTO_USED(X509_NAME_ENTRY_create_by_NID);
195 LCRYPTO_USED(X509_NAME_add_entry_by_txt);
196 LCRYPTO_USED(X509_NAME_ENTRY_create_by_OBJ);
197 LCRYPTO_USED(X509_NAME_ENTRY_set_object);
198 LCRYPTO_USED(X509_NAME_ENTRY_set_data);
199 LCRYPTO_USED(X509_NAME_ENTRY_get_object);
200 LCRYPTO_USED(X509_NAME_ENTRY_get_data);
201 LCRYPTO_USED(X509_NAME_ENTRY_set);
202 LCRYPTO_USED(X509v3_get_ext_count);
203 LCRYPTO_USED(X509v3_get_ext_by_NID);
204 LCRYPTO_USED(X509v3_get_ext_by_OBJ);
205 LCRYPTO_USED(X509v3_get_ext_by_critical);
206 LCRYPTO_USED(X509v3_get_ext);
207 LCRYPTO_USED(X509v3_delete_ext);
208 LCRYPTO_USED(X509v3_add_ext);
209 LCRYPTO_USED(X509_get_ext_count);
210 LCRYPTO_USED(X509_get_ext_by_NID);
211 LCRYPTO_USED(X509_get_ext_by_OBJ);
212 LCRYPTO_USED(X509_get_ext_by_critical);
213 LCRYPTO_USED(X509_get_ext);
214 LCRYPTO_USED(X509_delete_ext);
215 LCRYPTO_USED(X509_add_ext);
216 LCRYPTO_USED(X509_get_ext_d2i);
217 LCRYPTO_USED(X509_add1_ext_i2d);
218 LCRYPTO_USED(X509_CRL_get_ext_count);
219 LCRYPTO_USED(X509_CRL_get_ext_by_NID);
220 LCRYPTO_USED(X509_CRL_get_ext_by_OBJ);
221 LCRYPTO_USED(X509_CRL_get_ext_by_critical);
222 LCRYPTO_USED(X509_CRL_get_ext);
223 LCRYPTO_USED(X509_CRL_delete_ext);
224 LCRYPTO_USED(X509_CRL_add_ext);
225 LCRYPTO_USED(X509_CRL_get_ext_d2i);
226 LCRYPTO_USED(X509_CRL_add1_ext_i2d);
227 LCRYPTO_USED(X509_REVOKED_get_ext_count);
228 LCRYPTO_USED(X509_REVOKED_get_ext_by_NID);
229 LCRYPTO_USED(X509_REVOKED_get_ext_by_OBJ);
230 LCRYPTO_USED(X509_REVOKED_get_ext_by_critical);
231 LCRYPTO_USED(X509_REVOKED_get_ext);
232 LCRYPTO_USED(X509_REVOKED_delete_ext);
233 LCRYPTO_USED(X509_REVOKED_add_ext);
234 LCRYPTO_USED(X509_REVOKED_get_ext_d2i);
235 LCRYPTO_USED(X509_REVOKED_add1_ext_i2d);
236 LCRYPTO_USED(X509_EXTENSION_create_by_NID);
237 LCRYPTO_USED(X509_EXTENSION_create_by_OBJ);
238 LCRYPTO_USED(X509_EXTENSION_set_object);
239 LCRYPTO_USED(X509_EXTENSION_set_critical);
240 LCRYPTO_USED(X509_EXTENSION_set_data);
241 LCRYPTO_USED(X509_EXTENSION_get_object);
242 LCRYPTO_USED(X509_EXTENSION_get_data);
243 LCRYPTO_USED(X509_EXTENSION_get_critical);
244 LCRYPTO_USED(X509at_get_attr_count);
245 LCRYPTO_USED(X509at_get_attr_by_NID);
246 LCRYPTO_USED(X509at_get_attr_by_OBJ);
247 LCRYPTO_USED(X509at_get_attr);
248 LCRYPTO_USED(X509at_delete_attr);
249 LCRYPTO_USED(X509at_add1_attr);
250 LCRYPTO_USED(X509at_add1_attr_by_OBJ);
251 LCRYPTO_USED(X509at_add1_attr_by_NID);
252 LCRYPTO_USED(X509at_add1_attr_by_txt);
253 LCRYPTO_USED(X509at_get0_data_by_OBJ);
254 LCRYPTO_USED(X509_ATTRIBUTE_create_by_NID);
255 LCRYPTO_USED(X509_ATTRIBUTE_create_by_OBJ);
256 LCRYPTO_USED(X509_ATTRIBUTE_create_by_txt);
257 LCRYPTO_USED(X509_ATTRIBUTE_set1_object);
258 LCRYPTO_USED(X509_ATTRIBUTE_set1_data);
259 LCRYPTO_USED(X509_ATTRIBUTE_get0_data);
260 LCRYPTO_USED(X509_ATTRIBUTE_count);
261 LCRYPTO_USED(X509_ATTRIBUTE_get0_object);
262 LCRYPTO_USED(X509_ATTRIBUTE_get0_type);
263 LCRYPTO_USED(X509_verify_cert);
264 LCRYPTO_USED(X509_find_by_issuer_and_serial);
265 LCRYPTO_USED(X509_find_by_subject);
266 LCRYPTO_USED(X509_check_trust);
267 LCRYPTO_USED(X509_TRUST_get_count);
268 LCRYPTO_USED(X509_TRUST_get0);
269 LCRYPTO_USED(X509_TRUST_get_by_id);
270 LCRYPTO_USED(X509_TRUST_add);
271 LCRYPTO_USED(X509_TRUST_cleanup);
272 LCRYPTO_USED(X509_TRUST_get_flags);
273 LCRYPTO_USED(X509_TRUST_get0_name);
274 LCRYPTO_USED(X509_TRUST_get_trust);
275 LCRYPTO_USED(X509_up_ref);
276 LCRYPTO_USED(X509_chain_up_ref);
277 LCRYPTO_USED(ERR_load_X509_strings);
278 
279 #endif /* _LIBCRYPTO_X509_H */
280