1 /* $OpenBSD: rsa.h,v 1.3 2024/07/08 17:10:18 beck Exp $ */ 2 /* 3 * Copyright (c) 2023 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_RSA_H 19 #define _LIBCRYPTO_RSA_H 20 21 #ifndef _MSC_VER 22 #include_next <openssl/rsa.h> 23 #else 24 #include "../include/openssl/rsa.h" 25 #endif 26 #include "crypto_namespace.h" 27 28 LCRYPTO_USED(RSA_new); 29 LCRYPTO_USED(RSA_new_method); 30 LCRYPTO_USED(RSA_bits); 31 LCRYPTO_USED(RSA_size); 32 LCRYPTO_USED(RSA_generate_key); 33 LCRYPTO_USED(RSA_generate_key_ex); 34 LCRYPTO_USED(RSA_check_key); 35 LCRYPTO_USED(RSA_public_encrypt); 36 LCRYPTO_USED(RSA_private_encrypt); 37 LCRYPTO_USED(RSA_public_decrypt); 38 LCRYPTO_USED(RSA_private_decrypt); 39 LCRYPTO_USED(RSA_free); 40 LCRYPTO_USED(RSA_up_ref); 41 LCRYPTO_USED(RSA_flags); 42 LCRYPTO_USED(RSA_set_default_method); 43 LCRYPTO_USED(RSA_get_default_method); 44 LCRYPTO_USED(RSA_get_method); 45 LCRYPTO_USED(RSA_set_method); 46 LCRYPTO_USED(RSA_PKCS1_OpenSSL); 47 LCRYPTO_USED(RSA_PKCS1_SSLeay); 48 LCRYPTO_USED(RSA_pkey_ctx_ctrl); 49 LCRYPTO_USED(d2i_RSAPublicKey); 50 LCRYPTO_USED(i2d_RSAPublicKey); 51 LCRYPTO_USED(d2i_RSAPrivateKey); 52 LCRYPTO_USED(i2d_RSAPrivateKey); 53 LCRYPTO_USED(RSA_PSS_PARAMS_new); 54 LCRYPTO_USED(RSA_PSS_PARAMS_free); 55 LCRYPTO_USED(d2i_RSA_PSS_PARAMS); 56 LCRYPTO_USED(i2d_RSA_PSS_PARAMS); 57 LCRYPTO_USED(RSA_OAEP_PARAMS_new); 58 LCRYPTO_USED(RSA_OAEP_PARAMS_free); 59 LCRYPTO_USED(d2i_RSA_OAEP_PARAMS); 60 LCRYPTO_USED(i2d_RSA_OAEP_PARAMS); 61 LCRYPTO_USED(RSA_print_fp); 62 LCRYPTO_USED(RSA_print); 63 LCRYPTO_USED(RSA_sign); 64 LCRYPTO_USED(RSA_verify); 65 LCRYPTO_USED(RSA_sign_ASN1_OCTET_STRING); 66 LCRYPTO_USED(RSA_verify_ASN1_OCTET_STRING); 67 LCRYPTO_USED(RSA_blinding_on); 68 LCRYPTO_USED(RSA_blinding_off); 69 LCRYPTO_USED(RSA_padding_add_PKCS1_type_1); 70 LCRYPTO_USED(RSA_padding_check_PKCS1_type_1); 71 LCRYPTO_USED(RSA_padding_add_PKCS1_type_2); 72 LCRYPTO_USED(RSA_padding_check_PKCS1_type_2); 73 LCRYPTO_USED(PKCS1_MGF1); 74 LCRYPTO_USED(RSA_padding_add_PKCS1_OAEP); 75 LCRYPTO_USED(RSA_padding_check_PKCS1_OAEP); 76 LCRYPTO_USED(RSA_padding_add_PKCS1_OAEP_mgf1); 77 LCRYPTO_USED(RSA_padding_check_PKCS1_OAEP_mgf1); 78 LCRYPTO_USED(RSA_padding_add_none); 79 LCRYPTO_USED(RSA_padding_check_none); 80 LCRYPTO_USED(RSA_verify_PKCS1_PSS); 81 LCRYPTO_USED(RSA_padding_add_PKCS1_PSS); 82 LCRYPTO_USED(RSA_verify_PKCS1_PSS_mgf1); 83 LCRYPTO_USED(RSA_padding_add_PKCS1_PSS_mgf1); 84 LCRYPTO_USED(RSA_get_ex_new_index); 85 LCRYPTO_USED(RSA_set_ex_data); 86 LCRYPTO_USED(RSA_get_ex_data); 87 LCRYPTO_USED(RSA_security_bits); 88 LCRYPTO_USED(RSA_get0_key); 89 LCRYPTO_USED(RSA_set0_key); 90 LCRYPTO_USED(RSA_get0_crt_params); 91 LCRYPTO_USED(RSA_set0_crt_params); 92 LCRYPTO_USED(RSA_get0_factors); 93 LCRYPTO_USED(RSA_set0_factors); 94 LCRYPTO_USED(RSA_get0_n); 95 LCRYPTO_USED(RSA_get0_e); 96 LCRYPTO_USED(RSA_get0_d); 97 LCRYPTO_USED(RSA_get0_p); 98 LCRYPTO_USED(RSA_get0_q); 99 LCRYPTO_USED(RSA_get0_dmp1); 100 LCRYPTO_USED(RSA_get0_dmq1); 101 LCRYPTO_USED(RSA_get0_iqmp); 102 LCRYPTO_USED(RSA_get0_pss_params); 103 LCRYPTO_USED(RSA_clear_flags); 104 LCRYPTO_USED(RSA_test_flags); 105 LCRYPTO_USED(RSA_set_flags); 106 LCRYPTO_USED(RSAPublicKey_dup); 107 LCRYPTO_USED(RSAPrivateKey_dup); 108 LCRYPTO_USED(RSA_meth_new); 109 LCRYPTO_USED(RSA_meth_free); 110 LCRYPTO_USED(RSA_meth_dup); 111 LCRYPTO_USED(RSA_meth_set1_name); 112 LCRYPTO_USED(RSA_meth_set_priv_enc); 113 LCRYPTO_USED(RSA_meth_set_priv_dec); 114 LCRYPTO_USED(RSA_meth_get_finish); 115 LCRYPTO_USED(RSA_meth_set_finish); 116 LCRYPTO_USED(RSA_meth_set_pub_enc); 117 LCRYPTO_USED(RSA_meth_set_pub_dec); 118 LCRYPTO_USED(RSA_meth_set_mod_exp); 119 LCRYPTO_USED(RSA_meth_set_bn_mod_exp); 120 LCRYPTO_USED(RSA_meth_set_init); 121 LCRYPTO_USED(RSA_meth_set_keygen); 122 LCRYPTO_USED(RSA_meth_set_flags); 123 LCRYPTO_USED(RSA_meth_set0_app_data); 124 LCRYPTO_USED(RSA_meth_get0_name); 125 LCRYPTO_USED(RSA_meth_get_pub_enc); 126 LCRYPTO_USED(RSA_meth_get_pub_dec); 127 LCRYPTO_USED(RSA_meth_get_priv_enc); 128 LCRYPTO_USED(RSA_meth_get_priv_dec); 129 LCRYPTO_USED(RSA_meth_get_mod_exp); 130 LCRYPTO_USED(RSA_meth_get_bn_mod_exp); 131 LCRYPTO_USED(RSA_meth_get_init); 132 LCRYPTO_USED(RSA_meth_get_keygen); 133 LCRYPTO_USED(RSA_meth_get_flags); 134 LCRYPTO_USED(RSA_meth_get0_app_data); 135 LCRYPTO_USED(RSA_meth_get_sign); 136 LCRYPTO_USED(RSA_meth_set_sign); 137 LCRYPTO_USED(RSA_meth_get_verify); 138 LCRYPTO_USED(RSA_meth_set_verify); 139 LCRYPTO_USED(ERR_load_RSA_strings); 140 #if defined(LIBRESSL_NAMESPACE) 141 extern LCRYPTO_USED(RSAPublicKey_it); 142 extern LCRYPTO_USED(RSAPrivateKey_it); 143 extern LCRYPTO_USED(RSA_PSS_PARAMS_it); 144 extern LCRYPTO_USED(RSA_OAEP_PARAMS_it); 145 #endif 146 147 #endif /* _LIBCRYPTO_RSA_H */ 148