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