From 4dd435e97106ea3c072fbb6f1e10f92122a74899 Mon Sep 17 00:00:00 2001 From: beck Date: Fri, 7 Jul 2023 13:53:52 +0000 Subject: [PATCH] Hide symbols in hkdf, evp, err, ecdsa and ec ok jsing@ --- lib/libcrypto/hidden/openssl/ec.h | 155 +++++++++ lib/libcrypto/hidden/openssl/ecdsa.h | 57 ++++ lib/libcrypto/hidden/openssl/err.h | 68 ++++ lib/libcrypto/hidden/openssl/evp.h | 457 +++++++++++++++++++++++++++ lib/libcrypto/hidden/openssl/hkdf.h | 32 ++ 5 files changed, 769 insertions(+) create mode 100644 lib/libcrypto/hidden/openssl/ec.h create mode 100644 lib/libcrypto/hidden/openssl/ecdsa.h create mode 100644 lib/libcrypto/hidden/openssl/err.h create mode 100644 lib/libcrypto/hidden/openssl/evp.h create mode 100644 lib/libcrypto/hidden/openssl/hkdf.h diff --git a/lib/libcrypto/hidden/openssl/ec.h b/lib/libcrypto/hidden/openssl/ec.h new file mode 100644 index 00000000000..ea77d44597f --- /dev/null +++ b/lib/libcrypto/hidden/openssl/ec.h @@ -0,0 +1,155 @@ +/* $OpenBSD: ec.h,v 1.1 2023/07/07 13:53:52 beck Exp $ */ +/* + * Copyright (c) 2023 Bob Beck + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ + +#ifndef _LIBCRYPTO_EC_H +#define _LIBCRYPTO_EC_H + +#ifndef _MSC_VER +#include_next +#else +#include "../include/openssl/ec.h" +#endif +#include "crypto_namespace.h" + +LCRYPTO_USED(EC_GFp_simple_method); +LCRYPTO_USED(EC_GFp_mont_method); +LCRYPTO_USED(EC_GROUP_new); +LCRYPTO_USED(EC_GROUP_free); +LCRYPTO_USED(EC_GROUP_clear_free); +LCRYPTO_USED(EC_GROUP_copy); +LCRYPTO_USED(EC_GROUP_dup); +LCRYPTO_USED(EC_GROUP_method_of); +LCRYPTO_USED(EC_METHOD_get_field_type); +LCRYPTO_USED(EC_GROUP_set_generator); +LCRYPTO_USED(EC_GROUP_get0_generator); +LCRYPTO_USED(EC_GROUP_get_order); +LCRYPTO_USED(EC_GROUP_order_bits); +LCRYPTO_USED(EC_GROUP_get_cofactor); +LCRYPTO_USED(EC_GROUP_set_curve_name); +LCRYPTO_USED(EC_GROUP_get_curve_name); +LCRYPTO_USED(EC_GROUP_set_asn1_flag); +LCRYPTO_USED(EC_GROUP_get_asn1_flag); +LCRYPTO_USED(EC_GROUP_set_point_conversion_form); +LCRYPTO_USED(EC_GROUP_get_point_conversion_form); +LCRYPTO_USED(EC_GROUP_get0_seed); +LCRYPTO_USED(EC_GROUP_get_seed_len); +LCRYPTO_USED(EC_GROUP_set_seed); +LCRYPTO_USED(EC_GROUP_set_curve); +LCRYPTO_USED(EC_GROUP_get_curve); +LCRYPTO_USED(EC_GROUP_set_curve_GFp); +LCRYPTO_USED(EC_GROUP_get_curve_GFp); +LCRYPTO_USED(EC_GROUP_get_degree); +LCRYPTO_USED(EC_GROUP_check); +LCRYPTO_USED(EC_GROUP_check_discriminant); +LCRYPTO_USED(EC_GROUP_cmp); +LCRYPTO_USED(EC_GROUP_new_curve_GFp); +LCRYPTO_USED(EC_GROUP_new_by_curve_name); +LCRYPTO_USED(EC_get_builtin_curves); +LCRYPTO_USED(EC_curve_nid2nist); +LCRYPTO_USED(EC_curve_nist2nid); +LCRYPTO_USED(EC_POINT_new); +LCRYPTO_USED(EC_POINT_free); +LCRYPTO_USED(EC_POINT_clear_free); +LCRYPTO_USED(EC_POINT_copy); +LCRYPTO_USED(EC_POINT_dup); +LCRYPTO_USED(EC_POINT_method_of); +LCRYPTO_USED(EC_POINT_set_to_infinity); +LCRYPTO_USED(EC_POINT_set_affine_coordinates); +LCRYPTO_USED(EC_POINT_get_affine_coordinates); +LCRYPTO_USED(EC_POINT_set_compressed_coordinates); +LCRYPTO_USED(EC_POINT_set_Jprojective_coordinates_GFp); +LCRYPTO_USED(EC_POINT_get_Jprojective_coordinates_GFp); +LCRYPTO_USED(EC_POINT_set_affine_coordinates_GFp); +LCRYPTO_USED(EC_POINT_get_affine_coordinates_GFp); +LCRYPTO_USED(EC_POINT_set_compressed_coordinates_GFp); +LCRYPTO_USED(EC_POINT_point2oct); +LCRYPTO_USED(EC_POINT_oct2point); +LCRYPTO_USED(EC_POINT_point2bn); +LCRYPTO_USED(EC_POINT_bn2point); +LCRYPTO_USED(EC_POINT_point2hex); +LCRYPTO_USED(EC_POINT_hex2point); +LCRYPTO_USED(EC_POINT_add); +LCRYPTO_USED(EC_POINT_dbl); +LCRYPTO_USED(EC_POINT_invert); +LCRYPTO_USED(EC_POINT_is_at_infinity); +LCRYPTO_USED(EC_POINT_is_on_curve); +LCRYPTO_USED(EC_POINT_cmp); +LCRYPTO_USED(EC_POINT_make_affine); +LCRYPTO_USED(EC_POINTs_make_affine); +LCRYPTO_USED(EC_POINTs_mul); +LCRYPTO_USED(EC_POINT_mul); +LCRYPTO_USED(EC_GROUP_precompute_mult); +LCRYPTO_USED(EC_GROUP_have_precompute_mult); +LCRYPTO_USED(EC_GROUP_get_basis_type); +LCRYPTO_USED(d2i_ECPKParameters); +LCRYPTO_USED(i2d_ECPKParameters); +LCRYPTO_USED(ECPKParameters_print); +LCRYPTO_USED(ECPKParameters_print_fp); +LCRYPTO_USED(EC_KEY_new); +LCRYPTO_USED(EC_KEY_get_flags); +LCRYPTO_USED(EC_KEY_set_flags); +LCRYPTO_USED(EC_KEY_clear_flags); +LCRYPTO_USED(EC_KEY_new_by_curve_name); +LCRYPTO_USED(EC_KEY_free); +LCRYPTO_USED(EC_KEY_copy); +LCRYPTO_USED(EC_KEY_dup); +LCRYPTO_USED(EC_KEY_up_ref); +LCRYPTO_USED(EC_KEY_get0_group); +LCRYPTO_USED(EC_KEY_set_group); +LCRYPTO_USED(EC_KEY_get0_private_key); +LCRYPTO_USED(EC_KEY_set_private_key); +LCRYPTO_USED(EC_KEY_get0_public_key); +LCRYPTO_USED(EC_KEY_set_public_key); +LCRYPTO_USED(EC_KEY_get_enc_flags); +LCRYPTO_USED(EC_KEY_set_enc_flags); +LCRYPTO_USED(EC_KEY_get_conv_form); +LCRYPTO_USED(EC_KEY_set_conv_form); +LCRYPTO_USED(EC_KEY_set_asn1_flag); +LCRYPTO_USED(EC_KEY_precompute_mult); +LCRYPTO_USED(EC_KEY_generate_key); +LCRYPTO_USED(EC_KEY_check_key); +LCRYPTO_USED(EC_KEY_set_public_key_affine_coordinates); +LCRYPTO_USED(d2i_ECPrivateKey); +LCRYPTO_USED(i2d_ECPrivateKey); +LCRYPTO_USED(d2i_ECParameters); +LCRYPTO_USED(i2d_ECParameters); +LCRYPTO_USED(o2i_ECPublicKey); +LCRYPTO_USED(i2o_ECPublicKey); +LCRYPTO_USED(ECParameters_print); +LCRYPTO_USED(EC_KEY_print); +LCRYPTO_USED(ECParameters_print_fp); +LCRYPTO_USED(EC_KEY_print_fp); +LCRYPTO_USED(EC_KEY_set_ex_data); +LCRYPTO_USED(EC_KEY_get_ex_data); +LCRYPTO_USED(EC_KEY_OpenSSL); +LCRYPTO_USED(EC_KEY_get_default_method); +LCRYPTO_USED(EC_KEY_set_default_method); +LCRYPTO_USED(EC_KEY_get_method); +LCRYPTO_USED(EC_KEY_set_method); +LCRYPTO_USED(EC_KEY_new_method); +LCRYPTO_USED(EC_KEY_METHOD_new); +LCRYPTO_USED(EC_KEY_METHOD_free); +LCRYPTO_USED(EC_KEY_METHOD_set_init); +LCRYPTO_USED(EC_KEY_METHOD_set_keygen); +LCRYPTO_USED(EC_KEY_METHOD_set_compute_key); +LCRYPTO_USED(EC_KEY_METHOD_get_init); +LCRYPTO_USED(EC_KEY_METHOD_get_keygen); +LCRYPTO_USED(EC_KEY_METHOD_get_compute_key); +LCRYPTO_USED(ECParameters_dup); +LCRYPTO_USED(ERR_load_EC_strings); + +#endif /* _LIBCRYPTO_EC_H */ diff --git a/lib/libcrypto/hidden/openssl/ecdsa.h b/lib/libcrypto/hidden/openssl/ecdsa.h new file mode 100644 index 00000000000..25eb2b3b570 --- /dev/null +++ b/lib/libcrypto/hidden/openssl/ecdsa.h @@ -0,0 +1,57 @@ +/* $OpenBSD: ecdsa.h,v 1.1 2023/07/07 13:53:52 beck Exp $ */ +/* + * Copyright (c) 2023 Bob Beck + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ + +#ifndef _LIBCRYPTO_ECDSA_H +#define _LIBCRYPTO_ECDSA_H + +#ifndef _MSC_VER +#include_next +#else +#include "../include/openssl/ecdsa.h" +#endif +#include "crypto_namespace.h" + +LCRYPTO_USED(ECDSA_SIG_new); +LCRYPTO_USED(ECDSA_SIG_free); +LCRYPTO_USED(i2d_ECDSA_SIG); +LCRYPTO_USED(d2i_ECDSA_SIG); +LCRYPTO_USED(ECDSA_SIG_get0); +LCRYPTO_USED(ECDSA_SIG_get0_r); +LCRYPTO_USED(ECDSA_SIG_get0_s); +LCRYPTO_USED(ECDSA_SIG_set0); +LCRYPTO_USED(ECDSA_do_sign); +LCRYPTO_USED(ECDSA_do_sign_ex); +LCRYPTO_USED(ECDSA_do_verify); +LCRYPTO_USED(ECDSA_OpenSSL); +LCRYPTO_USED(ECDSA_set_default_method); +LCRYPTO_USED(ECDSA_get_default_method); +LCRYPTO_USED(ECDSA_set_method); +LCRYPTO_USED(ECDSA_size); +LCRYPTO_USED(ECDSA_sign_setup); +LCRYPTO_USED(ECDSA_sign); +LCRYPTO_USED(ECDSA_sign_ex); +LCRYPTO_USED(ECDSA_verify); +LCRYPTO_USED(ECDSA_get_ex_new_index); +LCRYPTO_USED(ECDSA_set_ex_data); +LCRYPTO_USED(ECDSA_get_ex_data); +LCRYPTO_USED(EC_KEY_METHOD_set_sign); +LCRYPTO_USED(EC_KEY_METHOD_set_verify); +LCRYPTO_USED(EC_KEY_METHOD_get_sign); +LCRYPTO_USED(EC_KEY_METHOD_get_verify); +LCRYPTO_USED(ERR_load_ECDSA_strings); + +#endif /* _LIBCRYPTO_ECDSA_H */ diff --git a/lib/libcrypto/hidden/openssl/err.h b/lib/libcrypto/hidden/openssl/err.h new file mode 100644 index 00000000000..f43f5f00e6e --- /dev/null +++ b/lib/libcrypto/hidden/openssl/err.h @@ -0,0 +1,68 @@ +/* $OpenBSD: err.h,v 1.1 2023/07/07 13:53:52 beck Exp $ */ +/* + * Copyright (c) 2023 Bob Beck + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ + +#ifndef _LIBCRYPTO_ERR_H +#define _LIBCRYPTO_ERR_H + +#ifndef _MSC_VER +#include_next +#else +#include "../include/openssl/err.h" +#endif +#include "crypto_namespace.h" + +LCRYPTO_USED(ERR_put_error); +LCRYPTO_USED(ERR_set_error_data); +LCRYPTO_USED(ERR_get_error); +LCRYPTO_USED(ERR_get_error_line); +LCRYPTO_USED(ERR_get_error_line_data); +LCRYPTO_USED(ERR_peek_error); +LCRYPTO_USED(ERR_peek_error_line); +LCRYPTO_USED(ERR_peek_error_line_data); +LCRYPTO_USED(ERR_peek_last_error); +LCRYPTO_USED(ERR_peek_last_error_line); +LCRYPTO_USED(ERR_peek_last_error_line_data); +LCRYPTO_USED(ERR_clear_error); +LCRYPTO_USED(ERR_error_string); +LCRYPTO_USED(ERR_error_string_n); +LCRYPTO_USED(ERR_lib_error_string); +LCRYPTO_USED(ERR_func_error_string); +LCRYPTO_USED(ERR_reason_error_string); +LCRYPTO_USED(ERR_print_errors_cb); +LCRYPTO_USED(ERR_print_errors_fp); +LCRYPTO_USED(ERR_print_errors); +LCRYPTO_USED(ERR_asprintf_error_data); +LCRYPTO_USED(ERR_add_error_data); +LCRYPTO_USED(ERR_add_error_vdata); +LCRYPTO_USED(ERR_load_strings); +LCRYPTO_USED(ERR_unload_strings); +LCRYPTO_USED(ERR_load_ERR_strings); +LCRYPTO_USED(ERR_load_crypto_strings); +LCRYPTO_USED(ERR_free_strings); +LCRYPTO_USED(ERR_remove_thread_state); +LCRYPTO_USED(ERR_remove_state); +LCRYPTO_USED(ERR_get_state); +LCRYPTO_USED(ERR_get_string_table); +LCRYPTO_USED(ERR_get_err_state_table); +LCRYPTO_USED(ERR_release_err_state_table); +LCRYPTO_USED(ERR_get_next_error_library); +LCRYPTO_USED(ERR_set_mark); +LCRYPTO_USED(ERR_pop_to_mark); +LCRYPTO_USED(ERR_get_implementation); +LCRYPTO_USED(ERR_set_implementation); + +#endif /* _LIBCRYPTO_ERR_H */ diff --git a/lib/libcrypto/hidden/openssl/evp.h b/lib/libcrypto/hidden/openssl/evp.h new file mode 100644 index 00000000000..d4bcb2719ef --- /dev/null +++ b/lib/libcrypto/hidden/openssl/evp.h @@ -0,0 +1,457 @@ +/* $OpenBSD: evp.h,v 1.1 2023/07/07 13:53:52 beck Exp $ */ +/* + * Copyright (c) 2023 Bob Beck + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ + +#ifndef _LIBCRYPTO_EVP_H +#define _LIBCRYPTO_EVP_H + +#ifndef _MSC_VER +#include_next +#else +#include "../include/openssl/evp.h" +#endif +#include "crypto_namespace.h" + +LCRYPTO_USED(EVP_MD_type); +LCRYPTO_USED(EVP_MD_pkey_type); +LCRYPTO_USED(EVP_MD_size); +LCRYPTO_USED(EVP_MD_block_size); +LCRYPTO_USED(EVP_MD_flags); +LCRYPTO_USED(EVP_MD_meth_new); +LCRYPTO_USED(EVP_MD_meth_free); +LCRYPTO_USED(EVP_MD_meth_dup); +LCRYPTO_USED(EVP_MD_meth_set_input_blocksize); +LCRYPTO_USED(EVP_MD_meth_set_result_size); +LCRYPTO_USED(EVP_MD_meth_set_app_datasize); +LCRYPTO_USED(EVP_MD_meth_set_flags); +LCRYPTO_USED(EVP_MD_meth_set_init); +LCRYPTO_USED(EVP_MD_meth_set_update); +LCRYPTO_USED(EVP_MD_meth_set_final); +LCRYPTO_USED(EVP_MD_meth_set_copy); +LCRYPTO_USED(EVP_MD_meth_set_cleanup); +LCRYPTO_USED(EVP_MD_meth_set_ctrl); +LCRYPTO_USED(EVP_MD_CTX_md); +LCRYPTO_USED(EVP_MD_CTX_md_data); +LCRYPTO_USED(EVP_MD_CTX_pkey_ctx); +LCRYPTO_USED(EVP_MD_CTX_set_pkey_ctx); +LCRYPTO_USED(EVP_CIPHER_nid); +LCRYPTO_USED(EVP_CIPHER_block_size); +LCRYPTO_USED(EVP_CIPHER_key_length); +LCRYPTO_USED(EVP_CIPHER_iv_length); +LCRYPTO_USED(EVP_CIPHER_flags); +LCRYPTO_USED(EVP_CIPHER_CTX_cipher); +LCRYPTO_USED(EVP_CIPHER_CTX_encrypting); +LCRYPTO_USED(EVP_CIPHER_CTX_nid); +LCRYPTO_USED(EVP_CIPHER_CTX_block_size); +LCRYPTO_USED(EVP_CIPHER_CTX_key_length); +LCRYPTO_USED(EVP_CIPHER_CTX_iv_length); +LCRYPTO_USED(EVP_CIPHER_CTX_get_iv); +LCRYPTO_USED(EVP_CIPHER_CTX_set_iv); +LCRYPTO_USED(EVP_CIPHER_CTX_copy); +LCRYPTO_USED(EVP_CIPHER_CTX_get_app_data); +LCRYPTO_USED(EVP_CIPHER_CTX_set_app_data); +LCRYPTO_USED(EVP_CIPHER_CTX_get_cipher_data); +LCRYPTO_USED(EVP_CIPHER_CTX_set_cipher_data); +LCRYPTO_USED(EVP_CIPHER_CTX_buf_noconst); +LCRYPTO_USED(EVP_CIPHER_CTX_flags); +LCRYPTO_USED(EVP_CIPHER_meth_new); +LCRYPTO_USED(EVP_CIPHER_meth_dup); +LCRYPTO_USED(EVP_CIPHER_meth_free); +LCRYPTO_USED(EVP_CIPHER_meth_set_iv_length); +LCRYPTO_USED(EVP_CIPHER_meth_set_flags); +LCRYPTO_USED(EVP_CIPHER_meth_set_impl_ctx_size); +LCRYPTO_USED(EVP_CIPHER_meth_set_init); +LCRYPTO_USED(EVP_CIPHER_meth_set_do_cipher); +LCRYPTO_USED(EVP_CIPHER_meth_set_cleanup); +LCRYPTO_USED(EVP_CIPHER_meth_set_set_asn1_params); +LCRYPTO_USED(EVP_CIPHER_meth_set_get_asn1_params); +LCRYPTO_USED(EVP_CIPHER_meth_set_ctrl); +LCRYPTO_USED(EVP_PKEY_new_raw_private_key); +LCRYPTO_USED(EVP_PKEY_new_raw_public_key); +LCRYPTO_USED(EVP_PKEY_get_raw_private_key); +LCRYPTO_USED(EVP_PKEY_get_raw_public_key); +LCRYPTO_USED(EVP_Cipher); +LCRYPTO_USED(EVP_MD_CTX_new); +LCRYPTO_USED(EVP_MD_CTX_free); +LCRYPTO_USED(EVP_MD_CTX_init); +LCRYPTO_USED(EVP_MD_CTX_reset); +LCRYPTO_USED(EVP_MD_CTX_create); +LCRYPTO_USED(EVP_MD_CTX_destroy); +LCRYPTO_USED(EVP_MD_CTX_cleanup); +LCRYPTO_USED(EVP_MD_CTX_copy_ex); +LCRYPTO_USED(EVP_MD_CTX_set_flags); +LCRYPTO_USED(EVP_MD_CTX_clear_flags); +LCRYPTO_USED(EVP_MD_CTX_ctrl); +LCRYPTO_USED(EVP_MD_CTX_test_flags); +LCRYPTO_USED(EVP_DigestInit_ex); +LCRYPTO_USED(EVP_DigestUpdate); +LCRYPTO_USED(EVP_DigestFinal_ex); +LCRYPTO_USED(EVP_Digest); +LCRYPTO_USED(EVP_MD_CTX_copy); +LCRYPTO_USED(EVP_DigestInit); +LCRYPTO_USED(EVP_DigestFinal); +LCRYPTO_USED(EVP_read_pw_string); +LCRYPTO_USED(EVP_read_pw_string_min); +LCRYPTO_USED(EVP_set_pw_prompt); +LCRYPTO_USED(EVP_get_pw_prompt); +LCRYPTO_USED(EVP_BytesToKey); +LCRYPTO_USED(EVP_CIPHER_CTX_set_flags); +LCRYPTO_USED(EVP_CIPHER_CTX_clear_flags); +LCRYPTO_USED(EVP_CIPHER_CTX_test_flags); +LCRYPTO_USED(EVP_EncryptInit); +LCRYPTO_USED(EVP_EncryptInit_ex); +LCRYPTO_USED(EVP_EncryptUpdate); +LCRYPTO_USED(EVP_EncryptFinal_ex); +LCRYPTO_USED(EVP_EncryptFinal); +LCRYPTO_USED(EVP_DecryptInit); +LCRYPTO_USED(EVP_DecryptInit_ex); +LCRYPTO_USED(EVP_DecryptUpdate); +LCRYPTO_USED(EVP_DecryptFinal_ex); +LCRYPTO_USED(EVP_DecryptFinal); +LCRYPTO_USED(EVP_CipherInit); +LCRYPTO_USED(EVP_CipherInit_ex); +LCRYPTO_USED(EVP_CipherUpdate); +LCRYPTO_USED(EVP_CipherFinal_ex); +LCRYPTO_USED(EVP_CipherFinal); +LCRYPTO_USED(EVP_SignFinal); +LCRYPTO_USED(EVP_VerifyFinal); +LCRYPTO_USED(EVP_DigestSignInit); +LCRYPTO_USED(EVP_DigestSignFinal); +LCRYPTO_USED(EVP_DigestSign); +LCRYPTO_USED(EVP_DigestVerifyInit); +LCRYPTO_USED(EVP_DigestVerifyFinal); +LCRYPTO_USED(EVP_DigestVerify); +LCRYPTO_USED(EVP_OpenInit); +LCRYPTO_USED(EVP_OpenFinal); +LCRYPTO_USED(EVP_SealInit); +LCRYPTO_USED(EVP_SealFinal); +LCRYPTO_USED(EVP_ENCODE_CTX_new); +LCRYPTO_USED(EVP_ENCODE_CTX_free); +LCRYPTO_USED(EVP_EncodeInit); +LCRYPTO_USED(EVP_EncodeUpdate); +LCRYPTO_USED(EVP_EncodeFinal); +LCRYPTO_USED(EVP_EncodeBlock); +LCRYPTO_USED(EVP_DecodeInit); +LCRYPTO_USED(EVP_DecodeUpdate); +LCRYPTO_USED(EVP_DecodeFinal); +LCRYPTO_USED(EVP_DecodeBlock); +LCRYPTO_USED(EVP_CIPHER_CTX_init); +LCRYPTO_USED(EVP_CIPHER_CTX_cleanup); +LCRYPTO_USED(EVP_CIPHER_CTX_new); +LCRYPTO_USED(EVP_CIPHER_CTX_free); +LCRYPTO_USED(EVP_CIPHER_CTX_reset); +LCRYPTO_USED(EVP_CIPHER_CTX_set_key_length); +LCRYPTO_USED(EVP_CIPHER_CTX_set_padding); +LCRYPTO_USED(EVP_CIPHER_CTX_ctrl); +LCRYPTO_USED(EVP_CIPHER_CTX_rand_key); +LCRYPTO_USED(BIO_f_md); +LCRYPTO_USED(BIO_f_base64); +LCRYPTO_USED(BIO_f_cipher); +LCRYPTO_USED(BIO_set_cipher); +LCRYPTO_USED(EVP_md_null); +LCRYPTO_USED(EVP_md4); +LCRYPTO_USED(EVP_md5); +LCRYPTO_USED(EVP_md5_sha1); +LCRYPTO_USED(EVP_sha1); +LCRYPTO_USED(EVP_sha224); +LCRYPTO_USED(EVP_sha256); +LCRYPTO_USED(EVP_sha384); +LCRYPTO_USED(EVP_sha512); +LCRYPTO_USED(EVP_sha512_224); +LCRYPTO_USED(EVP_sha512_256); +LCRYPTO_USED(EVP_sha3_224); +LCRYPTO_USED(EVP_sha3_256); +LCRYPTO_USED(EVP_sha3_384); +LCRYPTO_USED(EVP_sha3_512); +LCRYPTO_USED(EVP_sm3); +LCRYPTO_USED(EVP_ripemd160); +LCRYPTO_USED(EVP_whirlpool); +LCRYPTO_USED(EVP_gostr341194); +LCRYPTO_USED(EVP_gost2814789imit); +LCRYPTO_USED(EVP_streebog256); +LCRYPTO_USED(EVP_streebog512); +LCRYPTO_USED(EVP_enc_null); +LCRYPTO_USED(EVP_des_ecb); +LCRYPTO_USED(EVP_des_ede); +LCRYPTO_USED(EVP_des_ede3); +LCRYPTO_USED(EVP_des_ede_ecb); +LCRYPTO_USED(EVP_des_ede3_ecb); +LCRYPTO_USED(EVP_des_cfb64); +LCRYPTO_USED(EVP_des_cfb1); +LCRYPTO_USED(EVP_des_cfb8); +LCRYPTO_USED(EVP_des_ede_cfb64); +LCRYPTO_USED(EVP_des_ede3_cfb64); +LCRYPTO_USED(EVP_des_ede3_cfb1); +LCRYPTO_USED(EVP_des_ede3_cfb8); +LCRYPTO_USED(EVP_des_ofb); +LCRYPTO_USED(EVP_des_ede_ofb); +LCRYPTO_USED(EVP_des_ede3_ofb); +LCRYPTO_USED(EVP_des_cbc); +LCRYPTO_USED(EVP_des_ede_cbc); +LCRYPTO_USED(EVP_des_ede3_cbc); +LCRYPTO_USED(EVP_desx_cbc); +LCRYPTO_USED(EVP_rc4); +LCRYPTO_USED(EVP_rc4_40); +LCRYPTO_USED(EVP_rc4_hmac_md5); +LCRYPTO_USED(EVP_idea_ecb); +LCRYPTO_USED(EVP_idea_cfb64); +LCRYPTO_USED(EVP_idea_ofb); +LCRYPTO_USED(EVP_idea_cbc); +LCRYPTO_USED(EVP_rc2_ecb); +LCRYPTO_USED(EVP_rc2_cbc); +LCRYPTO_USED(EVP_rc2_40_cbc); +LCRYPTO_USED(EVP_rc2_64_cbc); +LCRYPTO_USED(EVP_rc2_cfb64); +LCRYPTO_USED(EVP_rc2_ofb); +LCRYPTO_USED(EVP_bf_ecb); +LCRYPTO_USED(EVP_bf_cbc); +LCRYPTO_USED(EVP_bf_cfb64); +LCRYPTO_USED(EVP_bf_ofb); +LCRYPTO_USED(EVP_cast5_ecb); +LCRYPTO_USED(EVP_cast5_cbc); +LCRYPTO_USED(EVP_cast5_cfb64); +LCRYPTO_USED(EVP_cast5_ofb); +LCRYPTO_USED(EVP_aes_128_ecb); +LCRYPTO_USED(EVP_aes_128_cbc); +LCRYPTO_USED(EVP_aes_128_cfb1); +LCRYPTO_USED(EVP_aes_128_cfb8); +LCRYPTO_USED(EVP_aes_128_cfb128); +LCRYPTO_USED(EVP_aes_128_ofb); +LCRYPTO_USED(EVP_aes_128_ctr); +LCRYPTO_USED(EVP_aes_128_ccm); +LCRYPTO_USED(EVP_aes_128_gcm); +LCRYPTO_USED(EVP_aes_128_wrap); +LCRYPTO_USED(EVP_aes_128_xts); +LCRYPTO_USED(EVP_aes_192_ecb); +LCRYPTO_USED(EVP_aes_192_cbc); +LCRYPTO_USED(EVP_aes_192_cfb1); +LCRYPTO_USED(EVP_aes_192_cfb8); +LCRYPTO_USED(EVP_aes_192_cfb128); +LCRYPTO_USED(EVP_aes_192_ofb); +LCRYPTO_USED(EVP_aes_192_ctr); +LCRYPTO_USED(EVP_aes_192_ccm); +LCRYPTO_USED(EVP_aes_192_gcm); +LCRYPTO_USED(EVP_aes_192_wrap); +LCRYPTO_USED(EVP_aes_256_ecb); +LCRYPTO_USED(EVP_aes_256_cbc); +LCRYPTO_USED(EVP_aes_256_cfb1); +LCRYPTO_USED(EVP_aes_256_cfb8); +LCRYPTO_USED(EVP_aes_256_cfb128); +LCRYPTO_USED(EVP_aes_256_ofb); +LCRYPTO_USED(EVP_aes_256_ctr); +LCRYPTO_USED(EVP_aes_256_ccm); +LCRYPTO_USED(EVP_aes_256_gcm); +LCRYPTO_USED(EVP_aes_256_wrap); +LCRYPTO_USED(EVP_aes_256_xts); +LCRYPTO_USED(EVP_chacha20_poly1305); +LCRYPTO_USED(EVP_aes_128_cbc_hmac_sha1); +LCRYPTO_USED(EVP_aes_256_cbc_hmac_sha1); +LCRYPTO_USED(EVP_camellia_128_ecb); +LCRYPTO_USED(EVP_camellia_128_cbc); +LCRYPTO_USED(EVP_camellia_128_cfb1); +LCRYPTO_USED(EVP_camellia_128_cfb8); +LCRYPTO_USED(EVP_camellia_128_cfb128); +LCRYPTO_USED(EVP_camellia_128_ofb); +LCRYPTO_USED(EVP_camellia_192_ecb); +LCRYPTO_USED(EVP_camellia_192_cbc); +LCRYPTO_USED(EVP_camellia_192_cfb1); +LCRYPTO_USED(EVP_camellia_192_cfb8); +LCRYPTO_USED(EVP_camellia_192_cfb128); +LCRYPTO_USED(EVP_camellia_192_ofb); +LCRYPTO_USED(EVP_camellia_256_ecb); +LCRYPTO_USED(EVP_camellia_256_cbc); +LCRYPTO_USED(EVP_camellia_256_cfb1); +LCRYPTO_USED(EVP_camellia_256_cfb8); +LCRYPTO_USED(EVP_camellia_256_cfb128); +LCRYPTO_USED(EVP_camellia_256_ofb); +LCRYPTO_USED(EVP_chacha20); +LCRYPTO_USED(EVP_gost2814789_ecb); +LCRYPTO_USED(EVP_gost2814789_cfb64); +LCRYPTO_USED(EVP_gost2814789_cnt); +LCRYPTO_USED(EVP_sm4_ecb); +LCRYPTO_USED(EVP_sm4_cbc); +LCRYPTO_USED(EVP_sm4_cfb128); +LCRYPTO_USED(EVP_sm4_ofb); +LCRYPTO_USED(EVP_sm4_ctr); +LCRYPTO_USED(OPENSSL_add_all_algorithms_noconf); +LCRYPTO_USED(OPENSSL_add_all_algorithms_conf); +LCRYPTO_USED(OpenSSL_add_all_ciphers); +LCRYPTO_USED(OpenSSL_add_all_digests); +LCRYPTO_USED(EVP_add_cipher); +LCRYPTO_USED(EVP_add_digest); +LCRYPTO_USED(EVP_get_cipherbyname); +LCRYPTO_USED(EVP_get_digestbyname); +LCRYPTO_USED(EVP_cleanup); +LCRYPTO_USED(EVP_CIPHER_do_all); +LCRYPTO_USED(EVP_CIPHER_do_all_sorted); +LCRYPTO_USED(EVP_MD_do_all); +LCRYPTO_USED(EVP_MD_do_all_sorted); +LCRYPTO_USED(EVP_PKEY_decrypt_old); +LCRYPTO_USED(EVP_PKEY_encrypt_old); +LCRYPTO_USED(EVP_PKEY_type); +LCRYPTO_USED(EVP_PKEY_id); +LCRYPTO_USED(EVP_PKEY_base_id); +LCRYPTO_USED(EVP_PKEY_bits); +LCRYPTO_USED(EVP_PKEY_security_bits); +LCRYPTO_USED(EVP_PKEY_size); +LCRYPTO_USED(EVP_PKEY_set_type); +LCRYPTO_USED(EVP_PKEY_set_type_str); +LCRYPTO_USED(EVP_PKEY_assign); +LCRYPTO_USED(EVP_PKEY_get0); +LCRYPTO_USED(EVP_PKEY_get0_hmac); +LCRYPTO_USED(EVP_PKEY_get0_RSA); +LCRYPTO_USED(EVP_PKEY_get1_RSA); +LCRYPTO_USED(EVP_PKEY_set1_RSA); +LCRYPTO_USED(EVP_PKEY_get0_DSA); +LCRYPTO_USED(EVP_PKEY_get1_DSA); +LCRYPTO_USED(EVP_PKEY_set1_DSA); +LCRYPTO_USED(EVP_PKEY_get0_DH); +LCRYPTO_USED(EVP_PKEY_get1_DH); +LCRYPTO_USED(EVP_PKEY_set1_DH); +LCRYPTO_USED(EVP_PKEY_get0_EC_KEY); +LCRYPTO_USED(EVP_PKEY_get1_EC_KEY); +LCRYPTO_USED(EVP_PKEY_set1_EC_KEY); +LCRYPTO_USED(EVP_PKEY_new); +LCRYPTO_USED(EVP_PKEY_free); +LCRYPTO_USED(EVP_PKEY_up_ref); +LCRYPTO_USED(d2i_PublicKey); +LCRYPTO_USED(i2d_PublicKey); +LCRYPTO_USED(d2i_PrivateKey); +LCRYPTO_USED(d2i_AutoPrivateKey); +LCRYPTO_USED(i2d_PrivateKey); +LCRYPTO_USED(EVP_PKEY_copy_parameters); +LCRYPTO_USED(EVP_PKEY_missing_parameters); +LCRYPTO_USED(EVP_PKEY_save_parameters); +LCRYPTO_USED(EVP_PKEY_cmp_parameters); +LCRYPTO_USED(EVP_PKEY_cmp); +LCRYPTO_USED(EVP_PKEY_print_public); +LCRYPTO_USED(EVP_PKEY_print_private); +LCRYPTO_USED(EVP_PKEY_print_params); +LCRYPTO_USED(EVP_PKEY_get_default_digest_nid); +LCRYPTO_USED(EVP_CIPHER_type); +LCRYPTO_USED(EVP_CIPHER_param_to_asn1); +LCRYPTO_USED(EVP_CIPHER_asn1_to_param); +LCRYPTO_USED(EVP_CIPHER_set_asn1_iv); +LCRYPTO_USED(EVP_CIPHER_get_asn1_iv); +LCRYPTO_USED(PKCS5_PBE_keyivgen); +LCRYPTO_USED(PKCS5_PBKDF2_HMAC_SHA1); +LCRYPTO_USED(PKCS5_PBKDF2_HMAC); +LCRYPTO_USED(PKCS5_v2_PBE_keyivgen); +LCRYPTO_USED(PKCS5_PBE_add); +LCRYPTO_USED(EVP_PBE_CipherInit); +LCRYPTO_USED(EVP_PBE_alg_add_type); +LCRYPTO_USED(EVP_PBE_alg_add); +LCRYPTO_USED(EVP_PBE_find); +LCRYPTO_USED(EVP_PBE_cleanup); +LCRYPTO_USED(EVP_PKEY_asn1_get_count); +LCRYPTO_USED(EVP_PKEY_asn1_get0); +LCRYPTO_USED(EVP_PKEY_asn1_find); +LCRYPTO_USED(EVP_PKEY_asn1_find_str); +LCRYPTO_USED(EVP_PKEY_asn1_add0); +LCRYPTO_USED(EVP_PKEY_asn1_add_alias); +LCRYPTO_USED(EVP_PKEY_asn1_get0_info); +LCRYPTO_USED(EVP_PKEY_get0_asn1); +LCRYPTO_USED(EVP_PKEY_asn1_new); +LCRYPTO_USED(EVP_PKEY_asn1_copy); +LCRYPTO_USED(EVP_PKEY_asn1_free); +LCRYPTO_USED(EVP_PKEY_asn1_set_public); +LCRYPTO_USED(EVP_PKEY_asn1_set_private); +LCRYPTO_USED(EVP_PKEY_asn1_set_param); +LCRYPTO_USED(EVP_PKEY_asn1_set_free); +LCRYPTO_USED(EVP_PKEY_asn1_set_ctrl); +LCRYPTO_USED(EVP_PKEY_asn1_set_security_bits); +LCRYPTO_USED(EVP_PKEY_asn1_set_check); +LCRYPTO_USED(EVP_PKEY_asn1_set_public_check); +LCRYPTO_USED(EVP_PKEY_asn1_set_param_check); +LCRYPTO_USED(EVP_PKEY_meth_find); +LCRYPTO_USED(EVP_PKEY_meth_new); +LCRYPTO_USED(EVP_PKEY_meth_get0_info); +LCRYPTO_USED(EVP_PKEY_meth_copy); +LCRYPTO_USED(EVP_PKEY_meth_free); +LCRYPTO_USED(EVP_PKEY_meth_add0); +LCRYPTO_USED(EVP_PKEY_CTX_new); +LCRYPTO_USED(EVP_PKEY_CTX_new_id); +LCRYPTO_USED(EVP_PKEY_CTX_dup); +LCRYPTO_USED(EVP_PKEY_CTX_free); +LCRYPTO_USED(EVP_PKEY_CTX_ctrl); +LCRYPTO_USED(EVP_PKEY_CTX_ctrl_str); +LCRYPTO_USED(EVP_PKEY_CTX_get_operation); +LCRYPTO_USED(EVP_PKEY_CTX_set0_keygen_info); +LCRYPTO_USED(EVP_PKEY_new_mac_key); +LCRYPTO_USED(EVP_PKEY_new_CMAC_key); +LCRYPTO_USED(EVP_PKEY_CTX_set_data); +LCRYPTO_USED(EVP_PKEY_CTX_get_data); +LCRYPTO_USED(EVP_PKEY_CTX_get0_pkey); +LCRYPTO_USED(EVP_PKEY_CTX_get0_peerkey); +LCRYPTO_USED(EVP_PKEY_CTX_set_app_data); +LCRYPTO_USED(EVP_PKEY_CTX_get_app_data); +LCRYPTO_USED(EVP_PKEY_sign_init); +LCRYPTO_USED(EVP_PKEY_sign); +LCRYPTO_USED(EVP_PKEY_verify_init); +LCRYPTO_USED(EVP_PKEY_verify); +LCRYPTO_USED(EVP_PKEY_verify_recover_init); +LCRYPTO_USED(EVP_PKEY_verify_recover); +LCRYPTO_USED(EVP_PKEY_encrypt_init); +LCRYPTO_USED(EVP_PKEY_encrypt); +LCRYPTO_USED(EVP_PKEY_decrypt_init); +LCRYPTO_USED(EVP_PKEY_decrypt); +LCRYPTO_USED(EVP_PKEY_derive_init); +LCRYPTO_USED(EVP_PKEY_derive_set_peer); +LCRYPTO_USED(EVP_PKEY_derive); +LCRYPTO_USED(EVP_PKEY_paramgen_init); +LCRYPTO_USED(EVP_PKEY_paramgen); +LCRYPTO_USED(EVP_PKEY_keygen_init); +LCRYPTO_USED(EVP_PKEY_keygen); +LCRYPTO_USED(EVP_PKEY_check); +LCRYPTO_USED(EVP_PKEY_public_check); +LCRYPTO_USED(EVP_PKEY_param_check); +LCRYPTO_USED(EVP_PKEY_CTX_set_cb); +LCRYPTO_USED(EVP_PKEY_CTX_get_cb); +LCRYPTO_USED(EVP_PKEY_CTX_get_keygen_info); +LCRYPTO_USED(EVP_PKEY_meth_set_init); +LCRYPTO_USED(EVP_PKEY_meth_set_copy); +LCRYPTO_USED(EVP_PKEY_meth_set_cleanup); +LCRYPTO_USED(EVP_PKEY_meth_set_paramgen); +LCRYPTO_USED(EVP_PKEY_meth_set_keygen); +LCRYPTO_USED(EVP_PKEY_meth_set_sign); +LCRYPTO_USED(EVP_PKEY_meth_set_verify); +LCRYPTO_USED(EVP_PKEY_meth_set_verify_recover); +LCRYPTO_USED(EVP_PKEY_meth_set_signctx); +LCRYPTO_USED(EVP_PKEY_meth_set_verifyctx); +LCRYPTO_USED(EVP_PKEY_meth_set_encrypt); +LCRYPTO_USED(EVP_PKEY_meth_set_decrypt); +LCRYPTO_USED(EVP_PKEY_meth_set_derive); +LCRYPTO_USED(EVP_PKEY_meth_set_ctrl); +LCRYPTO_USED(EVP_PKEY_meth_set_check); +LCRYPTO_USED(EVP_PKEY_meth_set_public_check); +LCRYPTO_USED(EVP_PKEY_meth_set_param_check); +LCRYPTO_USED(EVP_aead_aes_128_gcm); +LCRYPTO_USED(EVP_aead_aes_256_gcm); +LCRYPTO_USED(EVP_aead_chacha20_poly1305); +LCRYPTO_USED(EVP_aead_xchacha20_poly1305); +LCRYPTO_USED(EVP_AEAD_key_length); +LCRYPTO_USED(EVP_AEAD_nonce_length); +LCRYPTO_USED(EVP_AEAD_max_overhead); +LCRYPTO_USED(EVP_AEAD_max_tag_len); +LCRYPTO_USED(EVP_AEAD_CTX_new); +LCRYPTO_USED(EVP_AEAD_CTX_free); +LCRYPTO_USED(EVP_AEAD_CTX_init); +LCRYPTO_USED(EVP_AEAD_CTX_cleanup); +LCRYPTO_USED(EVP_AEAD_CTX_seal); +LCRYPTO_USED(EVP_AEAD_CTX_open); +LCRYPTO_USED(ERR_load_EVP_strings); + +#endif /* _LIBCRYPTO_EVP_H */ diff --git a/lib/libcrypto/hidden/openssl/hkdf.h b/lib/libcrypto/hidden/openssl/hkdf.h new file mode 100644 index 00000000000..abb12411129 --- /dev/null +++ b/lib/libcrypto/hidden/openssl/hkdf.h @@ -0,0 +1,32 @@ +/* $OpenBSD: hkdf.h,v 1.1 2023/07/07 13:53:52 beck Exp $ */ +/* + * Copyright (c) 2023 Bob Beck + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ + +#ifndef _LIBCRYPTO_HKDF_H +#define _LIBCRYPTO_HKDF_H + +#ifndef _MSC_VER +#include_next +#else +#include "../include/openssl/hkdf.h" +#endif +#include "crypto_namespace.h" + +LCRYPTO_USED(HKDF); +LCRYPTO_USED(HKDF_extract); +LCRYPTO_USED(HKDF_expand); + +#endif /* _LIBCRYPTO_HKDF_H */ -- 2.20.1