From 5f46809988e6978cdd4ac4c4d509e54c0c788801 Mon Sep 17 00:00:00 2001 From: oltolm Date: Mon, 1 Apr 2024 14:41:51 +0200 Subject: [PATCH 1/4] fix compilation of tests with GCC --- tests/api.c | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/api.c b/tests/api.c index 7d2be356b6..bcc1e9d787 100644 --- a/tests/api.c +++ b/tests/api.c @@ -146,6 +146,7 @@ #endif #include +#include #include #include /* compatibility layer */ #include From f744043db16e8ce5c77cad41425c0ee6eb0a0084 Mon Sep 17 00:00:00 2001 From: oltolm Date: Mon, 1 Apr 2024 14:20:58 +0200 Subject: [PATCH 2/4] change the way "wolfssl/options.h.in" is generated --- CMakeLists.txt | 41 ++---- cmake/functions.cmake | 29 ---- wolfssl/options.h.in | 336 ++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 350 insertions(+), 56 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 9e561d9f96..c3a3be361a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -437,7 +437,7 @@ add_option(WOLFSSL_ALPN "no" "yes;no") if(WOLFSSL_ALPN) - list(APPEND WOLFSSL_DEFINITIONS "-DHAVE_ALPN" "-DHAVE_TLS_EXTENSIONS") + list(APPEND WOLFSSL_DEFINITIONS "-DHAVE_ALPN" "-DHAVE_TLS_EXTENSIONS") endif() # altcertchains @@ -2236,32 +2236,6 @@ endif() file(REMOVE ${OPTION_FILE}) -file(APPEND ${OPTION_FILE} "/* wolfssl options.h\n") -file(APPEND ${OPTION_FILE} " * generated from configure options\n") -file(APPEND ${OPTION_FILE} " *\n") -file(APPEND ${OPTION_FILE} " * Copyright (C) 2006-2023 wolfSSL Inc.\n") -file(APPEND ${OPTION_FILE} " *\n") -file(APPEND ${OPTION_FILE} " * This file is part of wolfSSL. (formerly known as CyaSSL)\n") -file(APPEND ${OPTION_FILE} " *\n") -file(APPEND ${OPTION_FILE} " */\n\n") -file(APPEND ${OPTION_FILE} "#ifndef WOLFSSL_OPTIONS_H\n") -file(APPEND ${OPTION_FILE} "#define WOLFSSL_OPTIONS_H\n\n\n") -file(APPEND ${OPTION_FILE} "#ifdef __cplusplus\n") -file(APPEND ${OPTION_FILE} "extern \"C\" {\n") -file(APPEND ${OPTION_FILE} "#endif\n\n") - -add_to_options_file("${WOLFSSL_DEFINITIONS}" "${OPTION_FILE}") -# CMAKE_C_FLAGS is just a string of space-separated flags to pass to the C -# compiler. We need to replace those spaces with semicolons in order to treat it -# as a CMake list. -string(REPLACE " " ";" CMAKE_C_FLAGS_LIST "${CMAKE_C_FLAGS}") -add_to_options_file("${CMAKE_C_FLAGS_LIST}" "${OPTION_FILE}") - -file(APPEND ${OPTION_FILE} "\n#ifdef __cplusplus\n") -file(APPEND ${OPTION_FILE} "}\n") -file(APPEND ${OPTION_FILE} "#endif\n\n\n") -file(APPEND ${OPTION_FILE} "#endif /* WOLFSSL_OPTIONS_H */\n\n") - #################################################### # Library Target #################################################### @@ -2339,6 +2313,19 @@ if(WOLFSSL_ARIA) message(STATUS "ARIA Check: WOLFSSL_LINK_LIBS = ${WOLFSSL_LINK_LIBS}") endif() +foreach(DEF IN LISTS WOLFSSL_DEFINITIONS) + string(REGEX MATCH "^(-D)?([^=]+)(=(.*))?$" DEF_MATCH ${DEF}) + if (DEFINED CMAKE_MATCH_4) + set(${CMAKE_MATCH_2} ${CMAKE_MATCH_4}) + # message("set(${CMAKE_MATCH_2} ${CMAKE_MATCH_4})") + else() + set(${CMAKE_MATCH_2} 1) + # message("set(${CMAKE_MATCH_2} 1)") + endif() +endforeach() + +configure_file(${CMAKE_CURRENT_SOURCE_DIR}/wolfssl/options.h.in ${OPTION_FILE}) + set_target_properties(wolfssl PROPERTIES SOVERSION ${WOLFSSL_LIBRARY_VERSION_FIRST} diff --git a/cmake/functions.cmake b/cmake/functions.cmake index 566feff762..279f5a82e0 100644 --- a/cmake/functions.cmake +++ b/cmake/functions.cmake @@ -918,35 +918,6 @@ function(generate_lib_src_list LIB_SOURCES) set(LIB_SOURCES ${LIB_SOURCES} PARENT_SCOPE) endfunction() -function(add_to_options_file DEFINITIONS OPTION_FILE) - list(REMOVE_DUPLICATES DEFINITIONS) - foreach(DEF IN LISTS DEFINITIONS) - if(DEF MATCHES "^-D") - if(DEF MATCHES "^-D(N)?DEBUG(=.+)?") - message("not outputting (N)DEBUG to ${OPTION_FILE}") - endif() - - # allow user to ignore system options - if(DEF MATCHES "^-D_.*") - file(APPEND ${OPTION_FILE} "#ifndef WOLFSSL_OPTIONS_IGNORE_SYS\n") - endif() - - string(REGEX REPLACE "^-D" "" DEF_NO_PREFIX ${DEF}) - string(REGEX REPLACE "=.*$" "" DEF_NO_EQUAL_NO_VAL ${DEF_NO_PREFIX}) - string(REPLACE "=" " " DEF_NO_EQUAL ${DEF_NO_PREFIX}) - - file(APPEND ${OPTION_FILE} "#undef ${DEF_NO_EQUAL_NO_VAL}\n") - file(APPEND ${OPTION_FILE} "#define ${DEF_NO_EQUAL}\n") - - if(DEF MATCHES "^-D_.*") - file(APPEND ${OPTION_FILE} "#endif\n") - endif() - - file(APPEND ${OPTION_FILE} "\n") - endif() - endforeach() -endfunction() - # Function: set_wolfssl_definitions # Parameter: SEARCH_VALUE The string to search for. (e.g. "WOLFSSL_SHA3") # Returns: RESULT diff --git a/wolfssl/options.h.in b/wolfssl/options.h.in index 5296ed158a..88672319ec 100644 --- a/wolfssl/options.h.in +++ b/wolfssl/options.h.in @@ -30,6 +30,342 @@ extern "C" { #endif +#ifndef WOLFSSL_OPTIONS_IGNORE_SYS +#undef _GNU_SOURCE +#cmakedefine _GNU_SOURCE +#undef _POSIX_THREADS +#cmakedefine _POSIX_THREADS +#endif +#undef ASIO_USE_WOLFSSL +#cmakedefine ASIO_USE_WOLFSSL +#undef BOOST_ASIO_USE_WOLFSSL +#cmakedefine BOOST_ASIO_USE_WOLFSSL +#undef CURVE25519_SMALL +#cmakedefine CURVE25519_SMALL +#undef CURVE448_SMALL +#cmakedefine CURVE448_SMALL +#undef DEBUG +#cmakedefine DEBUG +#undef DEBUG_WOLFSSL +#cmakedefine DEBUG_WOLFSSL +#undef ECC_SHAMIR +#cmakedefine ECC_SHAMIR +#undef ECC_TIMING_RESISTANT +#cmakedefine ECC_TIMING_RESISTANT +#undef ED25519_SMALL +#cmakedefine ED25519_SMALL +#undef ED448_SMALL +#cmakedefine ED448_SMALL +#undef GCM_SMALL +#cmakedefine GCM_SMALL +#undef GCM_TABLE +#cmakedefine GCM_TABLE +#undef GCM_TABLE_4BIT +#cmakedefine GCM_TABLE_4BIT +#undef GCM_WORD32 +#cmakedefine GCM_WORD32 +#undef HAVE___UINT128_T +#cmakedefine HAVE___UINT128_T +#undef HAVE_AES_KEYWRAP +#cmakedefine HAVE_AES_KEYWRAP +#undef HAVE_AESCCM +#cmakedefine HAVE_AESCCM +#undef HAVE_AESGCM +#cmakedefine HAVE_AESGCM +#undef HAVE_ALPN +#cmakedefine HAVE_ALPN +#undef HAVE_ARIA +#cmakedefine HAVE_ARIA +#undef HAVE_CERTIFICATE_STATUS_REQUEST +#cmakedefine HAVE_CERTIFICATE_STATUS_REQUEST +#undef HAVE_CERTIFICATE_STATUS_REQUEST_V2 +#cmakedefine HAVE_CERTIFICATE_STATUS_REQUEST_V2 +#undef HAVE_CHACHA +#cmakedefine HAVE_CHACHA +#undef HAVE_CRL +#cmakedefine HAVE_CRL +#undef HAVE_CRL_IO +#cmakedefine HAVE_CRL_IO +#undef HAVE_CURVE25519 +#cmakedefine HAVE_CURVE25519 +#undef HAVE_CURVE448 +#cmakedefine HAVE_CURVE448 +#undef HAVE_DH_DEFAULT_PARAMS +#cmakedefine HAVE_DH_DEFAULT_PARAMS +#undef HAVE_ECC +#cmakedefine HAVE_ECC +#undef HAVE_ECH +#cmakedefine HAVE_ECH +#undef HAVE_ED25519 +#cmakedefine HAVE_ED25519 +#undef HAVE_ED448 +#cmakedefine HAVE_ED448 +#undef HAVE_ENCRYPT_THEN_MAC +#cmakedefine HAVE_ENCRYPT_THEN_MAC +#undef HAVE_EX_DATA +#cmakedefine HAVE_EX_DATA +#undef HAVE_EXTENDED_MASTER +#cmakedefine HAVE_EXTENDED_MASTER +#undef HAVE_FFDHE_2048 +#cmakedefine HAVE_FFDHE_2048 +#undef HAVE_HASHDRBG +#cmakedefine HAVE_HASHDRBG +#undef HAVE_HKDF +#cmakedefine HAVE_HKDF +#undef HAVE_HPKE +#cmakedefine HAVE_HPKE +#undef HAVE_KEYING_MATERIAL +#cmakedefine HAVE_KEYING_MATERIAL +#undef HAVE_LIBOQS +#cmakedefine HAVE_LIBOQS +#undef HAVE_MAX_FRAGMENT +#cmakedefine HAVE_MAX_FRAGMENT +#undef HAVE_OCSP +#cmakedefine HAVE_OCSP +#undef HAVE_ONE_TIME_AUTH +#cmakedefine HAVE_ONE_TIME_AUTH +#undef HAVE_PKCS7 +#cmakedefine HAVE_PKCS7 +#undef HAVE_POLY1305 +#cmakedefine HAVE_POLY1305 +#undef HAVE_PTHREAD +#cmakedefine HAVE_PTHREAD +#undef HAVE_REPRODUCIBLE_BUILD +#cmakedefine HAVE_REPRODUCIBLE_BUILD +#undef HAVE_SESSION_TICKET +#cmakedefine HAVE_SESSION_TICKET +#undef HAVE_SNI +#cmakedefine HAVE_SNI +#undef HAVE_SUPPORTED_CURVES +#cmakedefine HAVE_SUPPORTED_CURVES +#undef HAVE_THREAD_LS +#cmakedefine HAVE_THREAD_LS +#undef HAVE_TLS_EXTENSIONS +#cmakedefine HAVE_TLS_EXTENSIONS +#undef HAVE_TRUNCATED_HMAC +#cmakedefine HAVE_TRUNCATED_HMAC +#undef HAVE_TRUSTED_CA +#cmakedefine HAVE_TRUSTED_CA +#undef HAVE_X963_KDF +#cmakedefine HAVE_X963_KDF +#undef NO_AES +#cmakedefine NO_AES +#undef NO_AES_CBC +#cmakedefine NO_AES_CBC +#undef NO_ASN +#cmakedefine NO_ASN +#undef NO_ASN_CRYPT +#cmakedefine NO_ASN_CRYPT +#undef NO_BIG_INT +#cmakedefine NO_BIG_INT +#undef NO_CERTS +#cmakedefine NO_CERTS +#undef NO_CHACHA_ASM +#cmakedefine NO_CHACHA_ASM +#undef NO_CODING +#cmakedefine NO_CODING +#undef NO_CURVED25519_128BIT +#cmakedefine NO_CURVED25519_128BIT +#undef NO_CURVED448_128BIT +#cmakedefine NO_CURVED448_128BIT +#undef NO_DES3 +#cmakedefine NO_DES3 +#undef NO_DH +#cmakedefine NO_DH +#undef NO_DSA +#cmakedefine NO_DSA +#undef NO_ERROR_QUEUE +#cmakedefine NO_ERROR_QUEUE +#undef NO_ERROR_STRINGS +#cmakedefine NO_ERROR_STRINGS +#undef NO_FILESYSTEM +#cmakedefine NO_FILESYSTEM +#undef NO_INLINE +#cmakedefine NO_INLINE +#undef NO_MD4 +#cmakedefine NO_MD4 +#undef NO_MD5 +#cmakedefine NO_MD5 +#undef NO_OLD_RNGNAME +#cmakedefine NO_OLD_RNGNAME +#undef NO_OLD_SHA_NAMES +#cmakedefine NO_OLD_SHA_NAMES +#undef NO_OLD_SSL_NAMES +#cmakedefine NO_OLD_SSL_NAMES +#undef NO_OLD_TLS +#cmakedefine NO_OLD_TLS +#undef NO_OLD_WC_NAMES +#cmakedefine NO_OLD_WC_NAMES +#undef NO_PKCS12 +#cmakedefine NO_PKCS12 +#undef NO_PSK +#cmakedefine NO_PSK +#undef NO_PWDBASED +#cmakedefine NO_PWDBASED +#undef NO_RC4 +#cmakedefine NO_RC4 +#undef NO_RSA +#cmakedefine NO_RSA +#undef NO_SESSION_CACHE_REF +#cmakedefine NO_SESSION_CACHE_REF +#undef NO_SHA +#cmakedefine NO_SHA +#undef NO_WOLFSSL_MEMORY +#cmakedefine NO_WOLFSSL_MEMORY +#undef OPENSSL_ALL +#cmakedefine OPENSSL_ALL +#undef OPENSSL_EXTRA +#cmakedefine OPENSSL_EXTRA +#undef OPENSSL_NO_SSL2 +#cmakedefine OPENSSL_NO_SSL2 +#undef OPENSSL_NO_SSL3 +#cmakedefine OPENSSL_NO_SSL3 +#undef SSL_TXT_TLSV1_2 +#cmakedefine SSL_TXT_TLSV1_2 +#undef TFM_ECC256 +#cmakedefine TFM_ECC256 +#undef TFM_NO_ASM +#cmakedefine TFM_NO_ASM +#undef TFM_TIMING_RESISTANT +#cmakedefine TFM_TIMING_RESISTANT +#undef USE_FAST_MATH +#cmakedefine USE_FAST_MATH +#undef WC_16BIT_CPU +#cmakedefine WC_16BIT_CPU +#undef WC_ECC_NONBLOCK +#cmakedefine WC_ECC_NONBLOCK +#undef WC_NO_ASYNC_THREADING +#cmakedefine WC_NO_ASYNC_THREADING +#undef WC_NO_HARDEN +#cmakedefine WC_NO_HARDEN +#undef WC_NO_HASHDRBG +#cmakedefine WC_NO_HASHDRBG +#undef WC_NO_RNG +#cmakedefine WC_NO_RNG +#undef WC_NO_RSA_OAEP +#cmakedefine WC_NO_RSA_OAEP +#undef WC_RSA_BLINDING +#cmakedefine WC_RSA_BLINDING +#undef WC_RSA_NO_PADDING +#cmakedefine WC_RSA_NO_PADDING +#undef WC_RSA_PSS +#cmakedefine WC_RSA_PSS +#undef WOLF_CRYPTO_CB +#cmakedefine WOLF_CRYPTO_CB +#undef WOLFSSL_AARCH64_BUILD +#cmakedefine WOLFSSL_AARCH64_BUILD +#undef WOLFSSL_AES_CFB +#cmakedefine WOLFSSL_AES_CFB +#undef WOLFSSL_AES_COUNTER +#cmakedefine WOLFSSL_AES_COUNTER +#undef WOLFSSL_AES_DIRECT +#cmakedefine WOLFSSL_AES_DIRECT +#undef WOLFSSL_AES_OFB +#cmakedefine WOLFSSL_AES_OFB +#undef WOLFSSL_AES_SIV +#cmakedefine WOLFSSL_AES_SIV +#undef WOLFSSL_ALT_CERT_CHAINS +#cmakedefine WOLFSSL_ALT_CERT_CHAINS +#undef WOLFSSL_APPLE_NATIVE_CERT_VALIDATION +#cmakedefine WOLFSSL_APPLE_NATIVE_CERT_VALIDATION +#undef WOLFSSL_ASIO +#cmakedefine WOLFSSL_ASIO +#undef WOLFSSL_BASE64_ENCODE +#cmakedefine WOLFSSL_BASE64_ENCODE +#undef WOLFSSL_CAAM +#cmakedefine WOLFSSL_CAAM +#undef WOLFSSL_CERT_EXT +#cmakedefine WOLFSSL_CERT_EXT +#undef WOLFSSL_CERT_GEN +#cmakedefine WOLFSSL_CERT_GEN +#undef WOLFSSL_CERT_GEN_CACHE +#cmakedefine WOLFSSL_CERT_GEN_CACHE +#undef WOLFSSL_CERT_NAME_ALL +#cmakedefine WOLFSSL_CERT_NAME_ALL +#undef WOLFSSL_CERT_REQ +#cmakedefine WOLFSSL_CERT_REQ +#undef WOLFSSL_CMAC +#cmakedefine WOLFSSL_CMAC +#undef WOLFSSL_DES_ECB +#cmakedefine WOLFSSL_DES_ECB +#undef WOLFSSL_DH_CONST +#cmakedefine WOLFSSL_DH_CONST +#undef WOLFSSL_DTLS +#cmakedefine WOLFSSL_DTLS +#undef WOLFSSL_DTLS_CID +#cmakedefine WOLFSSL_DTLS_CID +#undef WOLFSSL_DTLS13 +#cmakedefine WOLFSSL_DTLS13 +#undef WOLFSSL_EITHER_SIDE +#cmakedefine WOLFSSL_EITHER_SIDE +#undef WOLFSSL_ENCRYPTED_KEYS +#cmakedefine WOLFSSL_ENCRYPTED_KEYS +#undef WOLFSSL_ERROR_CODE_OPENSSL +#cmakedefine WOLFSSL_ERROR_CODE_OPENSSL +#undef WOLFSSL_IP_ALT_NAME +#cmakedefine WOLFSSL_IP_ALT_NAME +#undef WOLFSSL_KEY_GEN +#cmakedefine WOLFSSL_KEY_GEN +#undef WOLFSSL_NO_ASM +#cmakedefine WOLFSSL_NO_ASM +#undef WOLFSSL_NO_SHAKE128 +#cmakedefine WOLFSSL_NO_SHAKE128 +#undef WOLFSSL_NO_SHAKE256 +#cmakedefine WOLFSSL_NO_SHAKE256 +#undef WOLFSSL_NO_TLS12 +#cmakedefine WOLFSSL_NO_TLS12 +#undef WOLFSSL_POST_HANDSHAKE_AUTH +#cmakedefine WOLFSSL_POST_HANDSHAKE_AUTH +#undef WOLFSSL_PSS_LONG_SALT +#cmakedefine WOLFSSL_PSS_LONG_SALT +#undef WOLFSSL_PUBLIC_MP +#cmakedefine WOLFSSL_PUBLIC_MP +#undef WOLFSSL_QUIC +#cmakedefine WOLFSSL_QUIC +#undef WOLFSSL_SEND_HRR_COOKIE +#cmakedefine WOLFSSL_SEND_HRR_COOKIE +#undef WOLFSSL_SHA224 +#cmakedefine WOLFSSL_SHA224 +#undef WOLFSSL_SHA3 +#cmakedefine WOLFSSL_SHA3 +#undef WOLFSSL_SHA3_SMALL +#cmakedefine WOLFSSL_SHA3_SMALL +#undef WOLFSSL_SHA384 +#cmakedefine WOLFSSL_SHA384 +#undef WOLFSSL_SHA512 +#cmakedefine WOLFSSL_SHA512 +#undef WOLFSSL_SHAKE128 +#cmakedefine WOLFSSL_SHAKE128 +#undef WOLFSSL_SHAKE256 +#cmakedefine WOLFSSL_SHAKE256 +#undef WOLFSSL_SRTP +#cmakedefine WOLFSSL_SRTP +#undef WOLFSSL_SYS_CA_CERTS +#cmakedefine WOLFSSL_SYS_CA_CERTS +#undef WOLFSSL_TICKET_HAVE_ID +#cmakedefine WOLFSSL_TICKET_HAVE_ID +#undef WOLFSSL_TICKET_NONCE_MALLOC +#cmakedefine WOLFSSL_TICKET_NONCE_MALLOC +#undef WOLFSSL_TLS13 +#cmakedefine WOLFSSL_TLS13 +#undef WOLFSSL_USE_ALIGN +#cmakedefine WOLFSSL_USE_ALIGN +#undef WOLFSSL_USER_SETTINGS_ASM +#cmakedefine WOLFSSL_USER_SETTINGS_ASM +#undef WOLFSSL_W64_WRAPPER +#cmakedefine WOLFSSL_W64_WRAPPER +#undef WOLFSSL_WOLFSSH +#cmakedefine WOLFSSL_WOLFSSH +#undef WOLFSSL_X86_64_BUILD +#cmakedefine WOLFSSL_X86_64_BUILD +#undef NO_DES3_TLS_SUITES +#cmakedefine NO_DES3_TLS_SUITES +#undef WOLFSSL_EXPERIMENTAL_SETTINGS +#cmakedefine WOLFSSL_EXPERIMENTAL_SETTINGS +#undef WOLFSSL_HAVE_KYBER +#cmakedefine WOLFSSL_HAVE_KYBER +#undef WOLFSSL_WC_KYBER +#cmakedefine WOLFSSL_WC_KYBER #ifdef __cplusplus } From eb8f26926d29ef0c6ad1dcb787b8cefbc668e1e2 Mon Sep 17 00:00:00 2001 From: David Garske Date: Mon, 3 Jun 2024 15:38:36 -0700 Subject: [PATCH 3/4] Move the options.h.in template for cmake into new location. Added note about adding new options. --- CMakeLists.txt | 3 +- cmake/README.md | 2 +- cmake/include.am | 1 + cmake/options.h.in | 376 +++++++++++++++++++++++++++++++++++++++++++ wolfssl/options.h.in | 337 -------------------------------------- 5 files changed, 380 insertions(+), 339 deletions(-) create mode 100644 cmake/options.h.in diff --git a/CMakeLists.txt b/CMakeLists.txt index c3a3be361a..bc90e75408 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2324,7 +2324,8 @@ foreach(DEF IN LISTS WOLFSSL_DEFINITIONS) endif() endforeach() -configure_file(${CMAKE_CURRENT_SOURCE_DIR}/wolfssl/options.h.in ${OPTION_FILE}) +# If new build options are added please update the cmake/options.h.in +configure_file(${CMAKE_CURRENT_SOURCE_DIR}/cmake/options.h.in ${OPTION_FILE}) set_target_properties(wolfssl PROPERTIES diff --git a/cmake/README.md b/cmake/README.md index f3d9a52699..04b3bf3866 100644 --- a/cmake/README.md +++ b/cmake/README.md @@ -4,4 +4,4 @@ This directory contains some supplementary functions for the [CMakeLists.txt](.. See also cmake notes in the [INSTALL](../INSTALL) documentation file. - +If new CMake build options are added `cmake/options.h.in` must also be updated. diff --git a/cmake/include.am b/cmake/include.am index f1af70fcde..b7cd6c7911 100644 --- a/cmake/include.am +++ b/cmake/include.am @@ -2,5 +2,6 @@ EXTRA_DIST += cmake/README.md EXTRA_DIST += cmake/Config.cmake.in EXTRA_DIST += cmake/config.in EXTRA_DIST += cmake/functions.cmake +EXTRA_DIST += cmake/options.h.in EXTRA_DIST += cmake/modules/FindARIA.cmake EXTRA_DIST += cmake/modules/FindOQS.cmake diff --git a/cmake/options.h.in b/cmake/options.h.in new file mode 100644 index 0000000000..d002045cf4 --- /dev/null +++ b/cmake/options.h.in @@ -0,0 +1,376 @@ +/* options.h.in + * + * Copyright (C) 2006-2024 wolfSSL Inc. + * + * This file is part of wolfSSL. + * + * wolfSSL is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * wolfSSL is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA + */ + + +/* cmake template for options.h */ + +#ifndef WOLFSSL_OPTIONS_H +#define WOLFSSL_OPTIONS_H + + +#ifdef __cplusplus +extern "C" { +#endif + +#ifndef WOLFSSL_OPTIONS_IGNORE_SYS +#undef _GNU_SOURCE +#cmakedefine _GNU_SOURCE +#undef _POSIX_THREADS +#cmakedefine _POSIX_THREADS +#endif +#undef ASIO_USE_WOLFSSL +#cmakedefine ASIO_USE_WOLFSSL +#undef BOOST_ASIO_USE_WOLFSSL +#cmakedefine BOOST_ASIO_USE_WOLFSSL +#undef CURVE25519_SMALL +#cmakedefine CURVE25519_SMALL +#undef CURVE448_SMALL +#cmakedefine CURVE448_SMALL +#undef DEBUG +#cmakedefine DEBUG +#undef DEBUG_WOLFSSL +#cmakedefine DEBUG_WOLFSSL +#undef ECC_SHAMIR +#cmakedefine ECC_SHAMIR +#undef ECC_TIMING_RESISTANT +#cmakedefine ECC_TIMING_RESISTANT +#undef ED25519_SMALL +#cmakedefine ED25519_SMALL +#undef ED448_SMALL +#cmakedefine ED448_SMALL +#undef GCM_SMALL +#cmakedefine GCM_SMALL +#undef GCM_TABLE +#cmakedefine GCM_TABLE +#undef GCM_TABLE_4BIT +#cmakedefine GCM_TABLE_4BIT +#undef GCM_WORD32 +#cmakedefine GCM_WORD32 +#undef HAVE___UINT128_T +#cmakedefine HAVE___UINT128_T +#undef HAVE_AES_KEYWRAP +#cmakedefine HAVE_AES_KEYWRAP +#undef HAVE_AESCCM +#cmakedefine HAVE_AESCCM +#undef HAVE_AESGCM +#cmakedefine HAVE_AESGCM +#undef HAVE_ALPN +#cmakedefine HAVE_ALPN +#undef HAVE_ARIA +#cmakedefine HAVE_ARIA +#undef HAVE_CERTIFICATE_STATUS_REQUEST +#cmakedefine HAVE_CERTIFICATE_STATUS_REQUEST +#undef HAVE_CERTIFICATE_STATUS_REQUEST_V2 +#cmakedefine HAVE_CERTIFICATE_STATUS_REQUEST_V2 +#undef HAVE_CHACHA +#cmakedefine HAVE_CHACHA +#undef HAVE_CRL +#cmakedefine HAVE_CRL +#undef HAVE_CRL_IO +#cmakedefine HAVE_CRL_IO +#undef HAVE_CURVE25519 +#cmakedefine HAVE_CURVE25519 +#undef HAVE_CURVE448 +#cmakedefine HAVE_CURVE448 +#undef HAVE_DH_DEFAULT_PARAMS +#cmakedefine HAVE_DH_DEFAULT_PARAMS +#undef HAVE_ECC +#cmakedefine HAVE_ECC +#undef HAVE_ECH +#cmakedefine HAVE_ECH +#undef HAVE_ED25519 +#cmakedefine HAVE_ED25519 +#undef HAVE_ED448 +#cmakedefine HAVE_ED448 +#undef HAVE_ENCRYPT_THEN_MAC +#cmakedefine HAVE_ENCRYPT_THEN_MAC +#undef HAVE_EX_DATA +#cmakedefine HAVE_EX_DATA +#undef HAVE_EXTENDED_MASTER +#cmakedefine HAVE_EXTENDED_MASTER +#undef HAVE_FFDHE_2048 +#cmakedefine HAVE_FFDHE_2048 +#undef HAVE_HASHDRBG +#cmakedefine HAVE_HASHDRBG +#undef HAVE_HKDF +#cmakedefine HAVE_HKDF +#undef HAVE_HPKE +#cmakedefine HAVE_HPKE +#undef HAVE_KEYING_MATERIAL +#cmakedefine HAVE_KEYING_MATERIAL +#undef HAVE_LIBOQS +#cmakedefine HAVE_LIBOQS +#undef HAVE_MAX_FRAGMENT +#cmakedefine HAVE_MAX_FRAGMENT +#undef HAVE_OCSP +#cmakedefine HAVE_OCSP +#undef HAVE_ONE_TIME_AUTH +#cmakedefine HAVE_ONE_TIME_AUTH +#undef HAVE_PKCS7 +#cmakedefine HAVE_PKCS7 +#undef HAVE_POLY1305 +#cmakedefine HAVE_POLY1305 +#undef HAVE_PTHREAD +#cmakedefine HAVE_PTHREAD +#undef HAVE_REPRODUCIBLE_BUILD +#cmakedefine HAVE_REPRODUCIBLE_BUILD +#undef HAVE_SESSION_TICKET +#cmakedefine HAVE_SESSION_TICKET +#undef HAVE_SNI +#cmakedefine HAVE_SNI +#undef HAVE_SUPPORTED_CURVES +#cmakedefine HAVE_SUPPORTED_CURVES +#undef HAVE_THREAD_LS +#cmakedefine HAVE_THREAD_LS +#undef HAVE_TLS_EXTENSIONS +#cmakedefine HAVE_TLS_EXTENSIONS +#undef HAVE_TRUNCATED_HMAC +#cmakedefine HAVE_TRUNCATED_HMAC +#undef HAVE_TRUSTED_CA +#cmakedefine HAVE_TRUSTED_CA +#undef HAVE_X963_KDF +#cmakedefine HAVE_X963_KDF +#undef NO_AES +#cmakedefine NO_AES +#undef NO_AES_CBC +#cmakedefine NO_AES_CBC +#undef NO_ASN +#cmakedefine NO_ASN +#undef NO_ASN_CRYPT +#cmakedefine NO_ASN_CRYPT +#undef NO_BIG_INT +#cmakedefine NO_BIG_INT +#undef NO_CERTS +#cmakedefine NO_CERTS +#undef NO_CHACHA_ASM +#cmakedefine NO_CHACHA_ASM +#undef NO_CODING +#cmakedefine NO_CODING +#undef NO_CURVED25519_128BIT +#cmakedefine NO_CURVED25519_128BIT +#undef NO_CURVED448_128BIT +#cmakedefine NO_CURVED448_128BIT +#undef NO_DES3 +#cmakedefine NO_DES3 +#undef NO_DH +#cmakedefine NO_DH +#undef NO_DSA +#cmakedefine NO_DSA +#undef NO_ERROR_QUEUE +#cmakedefine NO_ERROR_QUEUE +#undef NO_ERROR_STRINGS +#cmakedefine NO_ERROR_STRINGS +#undef NO_FILESYSTEM +#cmakedefine NO_FILESYSTEM +#undef NO_INLINE +#cmakedefine NO_INLINE +#undef NO_MD4 +#cmakedefine NO_MD4 +#undef NO_MD5 +#cmakedefine NO_MD5 +#undef NO_OLD_RNGNAME +#cmakedefine NO_OLD_RNGNAME +#undef NO_OLD_SHA_NAMES +#cmakedefine NO_OLD_SHA_NAMES +#undef NO_OLD_SSL_NAMES +#cmakedefine NO_OLD_SSL_NAMES +#undef NO_OLD_TLS +#cmakedefine NO_OLD_TLS +#undef NO_OLD_WC_NAMES +#cmakedefine NO_OLD_WC_NAMES +#undef NO_PKCS12 +#cmakedefine NO_PKCS12 +#undef NO_PSK +#cmakedefine NO_PSK +#undef NO_PWDBASED +#cmakedefine NO_PWDBASED +#undef NO_RC4 +#cmakedefine NO_RC4 +#undef NO_RSA +#cmakedefine NO_RSA +#undef NO_SESSION_CACHE_REF +#cmakedefine NO_SESSION_CACHE_REF +#undef NO_SHA +#cmakedefine NO_SHA +#undef NO_WOLFSSL_MEMORY +#cmakedefine NO_WOLFSSL_MEMORY +#undef OPENSSL_ALL +#cmakedefine OPENSSL_ALL +#undef OPENSSL_EXTRA +#cmakedefine OPENSSL_EXTRA +#undef OPENSSL_NO_SSL2 +#cmakedefine OPENSSL_NO_SSL2 +#undef OPENSSL_NO_SSL3 +#cmakedefine OPENSSL_NO_SSL3 +#undef SSL_TXT_TLSV1_2 +#cmakedefine SSL_TXT_TLSV1_2 +#undef TFM_ECC256 +#cmakedefine TFM_ECC256 +#undef TFM_NO_ASM +#cmakedefine TFM_NO_ASM +#undef TFM_TIMING_RESISTANT +#cmakedefine TFM_TIMING_RESISTANT +#undef USE_FAST_MATH +#cmakedefine USE_FAST_MATH +#undef WC_16BIT_CPU +#cmakedefine WC_16BIT_CPU +#undef WC_ECC_NONBLOCK +#cmakedefine WC_ECC_NONBLOCK +#undef WC_NO_ASYNC_THREADING +#cmakedefine WC_NO_ASYNC_THREADING +#undef WC_NO_HARDEN +#cmakedefine WC_NO_HARDEN +#undef WC_NO_HASHDRBG +#cmakedefine WC_NO_HASHDRBG +#undef WC_NO_RNG +#cmakedefine WC_NO_RNG +#undef WC_NO_RSA_OAEP +#cmakedefine WC_NO_RSA_OAEP +#undef WC_RSA_BLINDING +#cmakedefine WC_RSA_BLINDING +#undef WC_RSA_NO_PADDING +#cmakedefine WC_RSA_NO_PADDING +#undef WC_RSA_PSS +#cmakedefine WC_RSA_PSS +#undef WOLF_CRYPTO_CB +#cmakedefine WOLF_CRYPTO_CB +#undef WOLFSSL_AARCH64_BUILD +#cmakedefine WOLFSSL_AARCH64_BUILD +#undef WOLFSSL_AES_CFB +#cmakedefine WOLFSSL_AES_CFB +#undef WOLFSSL_AES_COUNTER +#cmakedefine WOLFSSL_AES_COUNTER +#undef WOLFSSL_AES_DIRECT +#cmakedefine WOLFSSL_AES_DIRECT +#undef WOLFSSL_AES_OFB +#cmakedefine WOLFSSL_AES_OFB +#undef WOLFSSL_AES_SIV +#cmakedefine WOLFSSL_AES_SIV +#undef WOLFSSL_ALT_CERT_CHAINS +#cmakedefine WOLFSSL_ALT_CERT_CHAINS +#undef WOLFSSL_APPLE_NATIVE_CERT_VALIDATION +#cmakedefine WOLFSSL_APPLE_NATIVE_CERT_VALIDATION +#undef WOLFSSL_ASIO +#cmakedefine WOLFSSL_ASIO +#undef WOLFSSL_BASE64_ENCODE +#cmakedefine WOLFSSL_BASE64_ENCODE +#undef WOLFSSL_CAAM +#cmakedefine WOLFSSL_CAAM +#undef WOLFSSL_CERT_EXT +#cmakedefine WOLFSSL_CERT_EXT +#undef WOLFSSL_CERT_GEN +#cmakedefine WOLFSSL_CERT_GEN +#undef WOLFSSL_CERT_GEN_CACHE +#cmakedefine WOLFSSL_CERT_GEN_CACHE +#undef WOLFSSL_CERT_NAME_ALL +#cmakedefine WOLFSSL_CERT_NAME_ALL +#undef WOLFSSL_CERT_REQ +#cmakedefine WOLFSSL_CERT_REQ +#undef WOLFSSL_CMAC +#cmakedefine WOLFSSL_CMAC +#undef WOLFSSL_DES_ECB +#cmakedefine WOLFSSL_DES_ECB +#undef WOLFSSL_DH_CONST +#cmakedefine WOLFSSL_DH_CONST +#undef WOLFSSL_DTLS +#cmakedefine WOLFSSL_DTLS +#undef WOLFSSL_DTLS_CID +#cmakedefine WOLFSSL_DTLS_CID +#undef WOLFSSL_DTLS13 +#cmakedefine WOLFSSL_DTLS13 +#undef WOLFSSL_EITHER_SIDE +#cmakedefine WOLFSSL_EITHER_SIDE +#undef WOLFSSL_ENCRYPTED_KEYS +#cmakedefine WOLFSSL_ENCRYPTED_KEYS +#undef WOLFSSL_ERROR_CODE_OPENSSL +#cmakedefine WOLFSSL_ERROR_CODE_OPENSSL +#undef WOLFSSL_IP_ALT_NAME +#cmakedefine WOLFSSL_IP_ALT_NAME +#undef WOLFSSL_KEY_GEN +#cmakedefine WOLFSSL_KEY_GEN +#undef WOLFSSL_NO_ASM +#cmakedefine WOLFSSL_NO_ASM +#undef WOLFSSL_NO_SHAKE128 +#cmakedefine WOLFSSL_NO_SHAKE128 +#undef WOLFSSL_NO_SHAKE256 +#cmakedefine WOLFSSL_NO_SHAKE256 +#undef WOLFSSL_NO_TLS12 +#cmakedefine WOLFSSL_NO_TLS12 +#undef WOLFSSL_POST_HANDSHAKE_AUTH +#cmakedefine WOLFSSL_POST_HANDSHAKE_AUTH +#undef WOLFSSL_PSS_LONG_SALT +#cmakedefine WOLFSSL_PSS_LONG_SALT +#undef WOLFSSL_PUBLIC_MP +#cmakedefine WOLFSSL_PUBLIC_MP +#undef WOLFSSL_QUIC +#cmakedefine WOLFSSL_QUIC +#undef WOLFSSL_SEND_HRR_COOKIE +#cmakedefine WOLFSSL_SEND_HRR_COOKIE +#undef WOLFSSL_SHA224 +#cmakedefine WOLFSSL_SHA224 +#undef WOLFSSL_SHA3 +#cmakedefine WOLFSSL_SHA3 +#undef WOLFSSL_SHA3_SMALL +#cmakedefine WOLFSSL_SHA3_SMALL +#undef WOLFSSL_SHA384 +#cmakedefine WOLFSSL_SHA384 +#undef WOLFSSL_SHA512 +#cmakedefine WOLFSSL_SHA512 +#undef WOLFSSL_SHAKE128 +#cmakedefine WOLFSSL_SHAKE128 +#undef WOLFSSL_SHAKE256 +#cmakedefine WOLFSSL_SHAKE256 +#undef WOLFSSL_SRTP +#cmakedefine WOLFSSL_SRTP +#undef WOLFSSL_SYS_CA_CERTS +#cmakedefine WOLFSSL_SYS_CA_CERTS +#undef WOLFSSL_TICKET_HAVE_ID +#cmakedefine WOLFSSL_TICKET_HAVE_ID +#undef WOLFSSL_TICKET_NONCE_MALLOC +#cmakedefine WOLFSSL_TICKET_NONCE_MALLOC +#undef WOLFSSL_TLS13 +#cmakedefine WOLFSSL_TLS13 +#undef WOLFSSL_USE_ALIGN +#cmakedefine WOLFSSL_USE_ALIGN +#undef WOLFSSL_USER_SETTINGS_ASM +#cmakedefine WOLFSSL_USER_SETTINGS_ASM +#undef WOLFSSL_W64_WRAPPER +#cmakedefine WOLFSSL_W64_WRAPPER +#undef WOLFSSL_WOLFSSH +#cmakedefine WOLFSSL_WOLFSSH +#undef WOLFSSL_X86_64_BUILD +#cmakedefine WOLFSSL_X86_64_BUILD +#undef NO_DES3_TLS_SUITES +#cmakedefine NO_DES3_TLS_SUITES +#undef WOLFSSL_EXPERIMENTAL_SETTINGS +#cmakedefine WOLFSSL_EXPERIMENTAL_SETTINGS +#undef WOLFSSL_HAVE_KYBER +#cmakedefine WOLFSSL_HAVE_KYBER +#undef WOLFSSL_WC_KYBER +#cmakedefine WOLFSSL_WC_KYBER + +#ifdef __cplusplus +} +#endif + + +#endif /* WOLFSSL_OPTIONS_H */ + diff --git a/wolfssl/options.h.in b/wolfssl/options.h.in index 88672319ec..63919d63e5 100644 --- a/wolfssl/options.h.in +++ b/wolfssl/options.h.in @@ -30,342 +30,6 @@ extern "C" { #endif -#ifndef WOLFSSL_OPTIONS_IGNORE_SYS -#undef _GNU_SOURCE -#cmakedefine _GNU_SOURCE -#undef _POSIX_THREADS -#cmakedefine _POSIX_THREADS -#endif -#undef ASIO_USE_WOLFSSL -#cmakedefine ASIO_USE_WOLFSSL -#undef BOOST_ASIO_USE_WOLFSSL -#cmakedefine BOOST_ASIO_USE_WOLFSSL -#undef CURVE25519_SMALL -#cmakedefine CURVE25519_SMALL -#undef CURVE448_SMALL -#cmakedefine CURVE448_SMALL -#undef DEBUG -#cmakedefine DEBUG -#undef DEBUG_WOLFSSL -#cmakedefine DEBUG_WOLFSSL -#undef ECC_SHAMIR -#cmakedefine ECC_SHAMIR -#undef ECC_TIMING_RESISTANT -#cmakedefine ECC_TIMING_RESISTANT -#undef ED25519_SMALL -#cmakedefine ED25519_SMALL -#undef ED448_SMALL -#cmakedefine ED448_SMALL -#undef GCM_SMALL -#cmakedefine GCM_SMALL -#undef GCM_TABLE -#cmakedefine GCM_TABLE -#undef GCM_TABLE_4BIT -#cmakedefine GCM_TABLE_4BIT -#undef GCM_WORD32 -#cmakedefine GCM_WORD32 -#undef HAVE___UINT128_T -#cmakedefine HAVE___UINT128_T -#undef HAVE_AES_KEYWRAP -#cmakedefine HAVE_AES_KEYWRAP -#undef HAVE_AESCCM -#cmakedefine HAVE_AESCCM -#undef HAVE_AESGCM -#cmakedefine HAVE_AESGCM -#undef HAVE_ALPN -#cmakedefine HAVE_ALPN -#undef HAVE_ARIA -#cmakedefine HAVE_ARIA -#undef HAVE_CERTIFICATE_STATUS_REQUEST -#cmakedefine HAVE_CERTIFICATE_STATUS_REQUEST -#undef HAVE_CERTIFICATE_STATUS_REQUEST_V2 -#cmakedefine HAVE_CERTIFICATE_STATUS_REQUEST_V2 -#undef HAVE_CHACHA -#cmakedefine HAVE_CHACHA -#undef HAVE_CRL -#cmakedefine HAVE_CRL -#undef HAVE_CRL_IO -#cmakedefine HAVE_CRL_IO -#undef HAVE_CURVE25519 -#cmakedefine HAVE_CURVE25519 -#undef HAVE_CURVE448 -#cmakedefine HAVE_CURVE448 -#undef HAVE_DH_DEFAULT_PARAMS -#cmakedefine HAVE_DH_DEFAULT_PARAMS -#undef HAVE_ECC -#cmakedefine HAVE_ECC -#undef HAVE_ECH -#cmakedefine HAVE_ECH -#undef HAVE_ED25519 -#cmakedefine HAVE_ED25519 -#undef HAVE_ED448 -#cmakedefine HAVE_ED448 -#undef HAVE_ENCRYPT_THEN_MAC -#cmakedefine HAVE_ENCRYPT_THEN_MAC -#undef HAVE_EX_DATA -#cmakedefine HAVE_EX_DATA -#undef HAVE_EXTENDED_MASTER -#cmakedefine HAVE_EXTENDED_MASTER -#undef HAVE_FFDHE_2048 -#cmakedefine HAVE_FFDHE_2048 -#undef HAVE_HASHDRBG -#cmakedefine HAVE_HASHDRBG -#undef HAVE_HKDF -#cmakedefine HAVE_HKDF -#undef HAVE_HPKE -#cmakedefine HAVE_HPKE -#undef HAVE_KEYING_MATERIAL -#cmakedefine HAVE_KEYING_MATERIAL -#undef HAVE_LIBOQS -#cmakedefine HAVE_LIBOQS -#undef HAVE_MAX_FRAGMENT -#cmakedefine HAVE_MAX_FRAGMENT -#undef HAVE_OCSP -#cmakedefine HAVE_OCSP -#undef HAVE_ONE_TIME_AUTH -#cmakedefine HAVE_ONE_TIME_AUTH -#undef HAVE_PKCS7 -#cmakedefine HAVE_PKCS7 -#undef HAVE_POLY1305 -#cmakedefine HAVE_POLY1305 -#undef HAVE_PTHREAD -#cmakedefine HAVE_PTHREAD -#undef HAVE_REPRODUCIBLE_BUILD -#cmakedefine HAVE_REPRODUCIBLE_BUILD -#undef HAVE_SESSION_TICKET -#cmakedefine HAVE_SESSION_TICKET -#undef HAVE_SNI -#cmakedefine HAVE_SNI -#undef HAVE_SUPPORTED_CURVES -#cmakedefine HAVE_SUPPORTED_CURVES -#undef HAVE_THREAD_LS -#cmakedefine HAVE_THREAD_LS -#undef HAVE_TLS_EXTENSIONS -#cmakedefine HAVE_TLS_EXTENSIONS -#undef HAVE_TRUNCATED_HMAC -#cmakedefine HAVE_TRUNCATED_HMAC -#undef HAVE_TRUSTED_CA -#cmakedefine HAVE_TRUSTED_CA -#undef HAVE_X963_KDF -#cmakedefine HAVE_X963_KDF -#undef NO_AES -#cmakedefine NO_AES -#undef NO_AES_CBC -#cmakedefine NO_AES_CBC -#undef NO_ASN -#cmakedefine NO_ASN -#undef NO_ASN_CRYPT -#cmakedefine NO_ASN_CRYPT -#undef NO_BIG_INT -#cmakedefine NO_BIG_INT -#undef NO_CERTS -#cmakedefine NO_CERTS -#undef NO_CHACHA_ASM -#cmakedefine NO_CHACHA_ASM -#undef NO_CODING -#cmakedefine NO_CODING -#undef NO_CURVED25519_128BIT -#cmakedefine NO_CURVED25519_128BIT -#undef NO_CURVED448_128BIT -#cmakedefine NO_CURVED448_128BIT -#undef NO_DES3 -#cmakedefine NO_DES3 -#undef NO_DH -#cmakedefine NO_DH -#undef NO_DSA -#cmakedefine NO_DSA -#undef NO_ERROR_QUEUE -#cmakedefine NO_ERROR_QUEUE -#undef NO_ERROR_STRINGS -#cmakedefine NO_ERROR_STRINGS -#undef NO_FILESYSTEM -#cmakedefine NO_FILESYSTEM -#undef NO_INLINE -#cmakedefine NO_INLINE -#undef NO_MD4 -#cmakedefine NO_MD4 -#undef NO_MD5 -#cmakedefine NO_MD5 -#undef NO_OLD_RNGNAME -#cmakedefine NO_OLD_RNGNAME -#undef NO_OLD_SHA_NAMES -#cmakedefine NO_OLD_SHA_NAMES -#undef NO_OLD_SSL_NAMES -#cmakedefine NO_OLD_SSL_NAMES -#undef NO_OLD_TLS -#cmakedefine NO_OLD_TLS -#undef NO_OLD_WC_NAMES -#cmakedefine NO_OLD_WC_NAMES -#undef NO_PKCS12 -#cmakedefine NO_PKCS12 -#undef NO_PSK -#cmakedefine NO_PSK -#undef NO_PWDBASED -#cmakedefine NO_PWDBASED -#undef NO_RC4 -#cmakedefine NO_RC4 -#undef NO_RSA -#cmakedefine NO_RSA -#undef NO_SESSION_CACHE_REF -#cmakedefine NO_SESSION_CACHE_REF -#undef NO_SHA -#cmakedefine NO_SHA -#undef NO_WOLFSSL_MEMORY -#cmakedefine NO_WOLFSSL_MEMORY -#undef OPENSSL_ALL -#cmakedefine OPENSSL_ALL -#undef OPENSSL_EXTRA -#cmakedefine OPENSSL_EXTRA -#undef OPENSSL_NO_SSL2 -#cmakedefine OPENSSL_NO_SSL2 -#undef OPENSSL_NO_SSL3 -#cmakedefine OPENSSL_NO_SSL3 -#undef SSL_TXT_TLSV1_2 -#cmakedefine SSL_TXT_TLSV1_2 -#undef TFM_ECC256 -#cmakedefine TFM_ECC256 -#undef TFM_NO_ASM -#cmakedefine TFM_NO_ASM -#undef TFM_TIMING_RESISTANT -#cmakedefine TFM_TIMING_RESISTANT -#undef USE_FAST_MATH -#cmakedefine USE_FAST_MATH -#undef WC_16BIT_CPU -#cmakedefine WC_16BIT_CPU -#undef WC_ECC_NONBLOCK -#cmakedefine WC_ECC_NONBLOCK -#undef WC_NO_ASYNC_THREADING -#cmakedefine WC_NO_ASYNC_THREADING -#undef WC_NO_HARDEN -#cmakedefine WC_NO_HARDEN -#undef WC_NO_HASHDRBG -#cmakedefine WC_NO_HASHDRBG -#undef WC_NO_RNG -#cmakedefine WC_NO_RNG -#undef WC_NO_RSA_OAEP -#cmakedefine WC_NO_RSA_OAEP -#undef WC_RSA_BLINDING -#cmakedefine WC_RSA_BLINDING -#undef WC_RSA_NO_PADDING -#cmakedefine WC_RSA_NO_PADDING -#undef WC_RSA_PSS -#cmakedefine WC_RSA_PSS -#undef WOLF_CRYPTO_CB -#cmakedefine WOLF_CRYPTO_CB -#undef WOLFSSL_AARCH64_BUILD -#cmakedefine WOLFSSL_AARCH64_BUILD -#undef WOLFSSL_AES_CFB -#cmakedefine WOLFSSL_AES_CFB -#undef WOLFSSL_AES_COUNTER -#cmakedefine WOLFSSL_AES_COUNTER -#undef WOLFSSL_AES_DIRECT -#cmakedefine WOLFSSL_AES_DIRECT -#undef WOLFSSL_AES_OFB -#cmakedefine WOLFSSL_AES_OFB -#undef WOLFSSL_AES_SIV -#cmakedefine WOLFSSL_AES_SIV -#undef WOLFSSL_ALT_CERT_CHAINS -#cmakedefine WOLFSSL_ALT_CERT_CHAINS -#undef WOLFSSL_APPLE_NATIVE_CERT_VALIDATION -#cmakedefine WOLFSSL_APPLE_NATIVE_CERT_VALIDATION -#undef WOLFSSL_ASIO -#cmakedefine WOLFSSL_ASIO -#undef WOLFSSL_BASE64_ENCODE -#cmakedefine WOLFSSL_BASE64_ENCODE -#undef WOLFSSL_CAAM -#cmakedefine WOLFSSL_CAAM -#undef WOLFSSL_CERT_EXT -#cmakedefine WOLFSSL_CERT_EXT -#undef WOLFSSL_CERT_GEN -#cmakedefine WOLFSSL_CERT_GEN -#undef WOLFSSL_CERT_GEN_CACHE -#cmakedefine WOLFSSL_CERT_GEN_CACHE -#undef WOLFSSL_CERT_NAME_ALL -#cmakedefine WOLFSSL_CERT_NAME_ALL -#undef WOLFSSL_CERT_REQ -#cmakedefine WOLFSSL_CERT_REQ -#undef WOLFSSL_CMAC -#cmakedefine WOLFSSL_CMAC -#undef WOLFSSL_DES_ECB -#cmakedefine WOLFSSL_DES_ECB -#undef WOLFSSL_DH_CONST -#cmakedefine WOLFSSL_DH_CONST -#undef WOLFSSL_DTLS -#cmakedefine WOLFSSL_DTLS -#undef WOLFSSL_DTLS_CID -#cmakedefine WOLFSSL_DTLS_CID -#undef WOLFSSL_DTLS13 -#cmakedefine WOLFSSL_DTLS13 -#undef WOLFSSL_EITHER_SIDE -#cmakedefine WOLFSSL_EITHER_SIDE -#undef WOLFSSL_ENCRYPTED_KEYS -#cmakedefine WOLFSSL_ENCRYPTED_KEYS -#undef WOLFSSL_ERROR_CODE_OPENSSL -#cmakedefine WOLFSSL_ERROR_CODE_OPENSSL -#undef WOLFSSL_IP_ALT_NAME -#cmakedefine WOLFSSL_IP_ALT_NAME -#undef WOLFSSL_KEY_GEN -#cmakedefine WOLFSSL_KEY_GEN -#undef WOLFSSL_NO_ASM -#cmakedefine WOLFSSL_NO_ASM -#undef WOLFSSL_NO_SHAKE128 -#cmakedefine WOLFSSL_NO_SHAKE128 -#undef WOLFSSL_NO_SHAKE256 -#cmakedefine WOLFSSL_NO_SHAKE256 -#undef WOLFSSL_NO_TLS12 -#cmakedefine WOLFSSL_NO_TLS12 -#undef WOLFSSL_POST_HANDSHAKE_AUTH -#cmakedefine WOLFSSL_POST_HANDSHAKE_AUTH -#undef WOLFSSL_PSS_LONG_SALT -#cmakedefine WOLFSSL_PSS_LONG_SALT -#undef WOLFSSL_PUBLIC_MP -#cmakedefine WOLFSSL_PUBLIC_MP -#undef WOLFSSL_QUIC -#cmakedefine WOLFSSL_QUIC -#undef WOLFSSL_SEND_HRR_COOKIE -#cmakedefine WOLFSSL_SEND_HRR_COOKIE -#undef WOLFSSL_SHA224 -#cmakedefine WOLFSSL_SHA224 -#undef WOLFSSL_SHA3 -#cmakedefine WOLFSSL_SHA3 -#undef WOLFSSL_SHA3_SMALL -#cmakedefine WOLFSSL_SHA3_SMALL -#undef WOLFSSL_SHA384 -#cmakedefine WOLFSSL_SHA384 -#undef WOLFSSL_SHA512 -#cmakedefine WOLFSSL_SHA512 -#undef WOLFSSL_SHAKE128 -#cmakedefine WOLFSSL_SHAKE128 -#undef WOLFSSL_SHAKE256 -#cmakedefine WOLFSSL_SHAKE256 -#undef WOLFSSL_SRTP -#cmakedefine WOLFSSL_SRTP -#undef WOLFSSL_SYS_CA_CERTS -#cmakedefine WOLFSSL_SYS_CA_CERTS -#undef WOLFSSL_TICKET_HAVE_ID -#cmakedefine WOLFSSL_TICKET_HAVE_ID -#undef WOLFSSL_TICKET_NONCE_MALLOC -#cmakedefine WOLFSSL_TICKET_NONCE_MALLOC -#undef WOLFSSL_TLS13 -#cmakedefine WOLFSSL_TLS13 -#undef WOLFSSL_USE_ALIGN -#cmakedefine WOLFSSL_USE_ALIGN -#undef WOLFSSL_USER_SETTINGS_ASM -#cmakedefine WOLFSSL_USER_SETTINGS_ASM -#undef WOLFSSL_W64_WRAPPER -#cmakedefine WOLFSSL_W64_WRAPPER -#undef WOLFSSL_WOLFSSH -#cmakedefine WOLFSSL_WOLFSSH -#undef WOLFSSL_X86_64_BUILD -#cmakedefine WOLFSSL_X86_64_BUILD -#undef NO_DES3_TLS_SUITES -#cmakedefine NO_DES3_TLS_SUITES -#undef WOLFSSL_EXPERIMENTAL_SETTINGS -#cmakedefine WOLFSSL_EXPERIMENTAL_SETTINGS -#undef WOLFSSL_HAVE_KYBER -#cmakedefine WOLFSSL_HAVE_KYBER -#undef WOLFSSL_WC_KYBER -#cmakedefine WOLFSSL_WC_KYBER #ifdef __cplusplus } @@ -373,4 +37,3 @@ extern "C" { #endif /* WOLFSSL_OPTIONS_H */ - From 60ccaf379d750aad6805c176db5c27f15c017d75 Mon Sep 17 00:00:00 2001 From: David Garske Date: Thu, 6 Jun 2024 10:57:46 -0700 Subject: [PATCH 4/4] Remove uses of stdint in api.c. --- tests/api.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/tests/api.c b/tests/api.c index bcc1e9d787..023727698c 100644 --- a/tests/api.c +++ b/tests/api.c @@ -146,7 +146,6 @@ #endif #include -#include #include #include /* compatibility layer */ #include @@ -11244,8 +11243,8 @@ static int test_wolfSSL_UseMaxFragment(void) #endif WOLFSSL *ssl = NULL; #ifdef OPENSSL_EXTRA - int (*UseMaxFragment)(SSL *s, uint8_t mode); - int (*CTX_UseMaxFragment)(SSL_CTX *c, uint8_t mode); + int (*UseMaxFragment)(SSL *s, unsigned char mode); + int (*CTX_UseMaxFragment)(SSL_CTX *c, unsigned char mode); #else int (*UseMaxFragment)(WOLFSSL *s, unsigned char mode); int (*CTX_UseMaxFragment)(WOLFSSL_CTX *c, unsigned char mode); @@ -45815,13 +45814,13 @@ static int test_othername_and_SID_ext(void) { /* SID extension. SID data format explained here: * https://blog.qdsecurity.se/2022/05/27/manually-injecting-a-sid-in-a-certificate/ */ - uint8_t SidExtension[] = { + byte SidExtension[] = { 48, 64, 160, 62, 6, 10, 43, 6, 1, 4, 1, 130, 55, 25, 2, 1, 160, 48, 4, 46, 83, 45, 49, 45, 53, 45, 50, 49, 45, 50, 56, 52, 51, 57, 48, 55, 52, 49, 56, 45, 51, 57, 50, 54, 50, 55, 55, 52, 50, 49, 45, 51, 56, 49, 53, 57, 57, 51, 57, 55, 50, 45, 52, 54, 48, 49}; - uint8_t expectedAltName[] = { + byte expectedAltName[] = { 0x30, 0x27, 0xA0, 0x25, 0x06, 0x0A, 0x2B, 0x06, 0x01, 0x04, 0x01, 0x82, 0x37, 0x14, 0x02, 0x03, 0xA0, 0x17, 0x0C, 0x15, 0x6F, 0x74, 0x68, 0x65, 0x72, 0x6E, 0x61, 0x6D, 0x65, 0x40, 0x77, 0x6F, 0x6C, 0x66, 0x73, 0x73, @@ -71563,7 +71562,7 @@ static int test_read_write_hs(void) WOLFSSL_CTX *ctx_s = NULL, *ctx_c = NULL; WOLFSSL *ssl_s = NULL, *ssl_c = NULL; struct test_memio_ctx test_ctx; - uint8_t test_buffer[16]; + byte test_buffer[16]; unsigned int test; /* test == 0 : client writes, server reads */