28 #include "mbedTLS_config.h"
31 #ifndef MBEDTLS_CONFIG_H
32 #define MBEDTLS_CONFIG_H
34 #if defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
35 #define _CRT_SECURE_NO_DEPRECATE 1
63 #define MBEDTLS_HAVE_ASM
91 #define MBEDTLS_NO_UDBL_DIVISION
113 #define MBEDTLS_NO_64BIT_MULTIPLICATION
122 #define MBEDTLS_HAVE_SSE2
137 #define MBEDTLS_HAVE_TIME
158 #define MBEDTLS_HAVE_TIME_DATE
182 #define MBEDTLS_PLATFORM_MEMORY
201 #define MBEDTLS_PLATFORM_NO_STD_FUNCTIONS
226 #define MBEDTLS_PLATFORM_EXIT_ALT
227 #define MBEDTLS_PLATFORM_TIME_ALT
228 #define MBEDTLS_PLATFORM_FPRINTF_ALT
229 #define MBEDTLS_PLATFORM_PRINTF_ALT
230 #define MBEDTLS_PLATFORM_SNPRINTF_ALT
231 #define MBEDTLS_PLATFORM_VSNPRINTF_ALT
232 #define MBEDTLS_PLATFORM_NV_SEED_ALT
233 #define MBEDTLS_PLATFORM_SETUP_TEARDOWN_ALT
248 #define MBEDTLS_DEPRECATED_WARNING
260 #define MBEDTLS_DEPRECATED_REMOVED
312 #define MBEDTLS_CHECK_PARAMS
326 #define MBEDTLS_CHECK_PARAMS_ASSERT
349 #define MBEDTLS_TIMING_ALT
376 #define MBEDTLS_AES_ALT
377 #define MBEDTLS_ARC4_ALT
378 #define MBEDTLS_ARIA_ALT
379 #define MBEDTLS_BLOWFISH_ALT
380 #define MBEDTLS_CAMELLIA_ALT
381 #define MBEDTLS_CCM_ALT
382 #define MBEDTLS_CHACHA20_ALT
383 #define MBEDTLS_CHACHAPOLY_ALT
384 #define MBEDTLS_CMAC_ALT
385 #define MBEDTLS_DES_ALT
386 #define MBEDTLS_DHM_ALT
387 #define MBEDTLS_ECJPAKE_ALT
388 #define MBEDTLS_GCM_ALT
389 #define MBEDTLS_NIST_KW_ALT
390 #define MBEDTLS_MD2_ALT
391 #define MBEDTLS_MD4_ALT
392 #define MBEDTLS_MD5_ALT
393 #define MBEDTLS_POLY1305_ALT
394 #define MBEDTLS_RIPEMD160_ALT
395 #define MBEDTLS_RSA_ALT
396 #define MBEDTLS_SHA1_ALT
397 #define MBEDTLS_SHA256_ALT
398 #define MBEDTLS_SHA512_ALT
399 #define MBEDTLS_XTEA_ALT
410 #define MBEDTLS_ECP_ALT
457 #define MBEDTLS_MD2_PROCESS_ALT
458 #define MBEDTLS_MD4_PROCESS_ALT
459 #define MBEDTLS_MD5_PROCESS_ALT
460 #define MBEDTLS_RIPEMD160_PROCESS_ALT
461 #define MBEDTLS_SHA1_PROCESS_ALT
462 #define MBEDTLS_SHA256_PROCESS_ALT
463 #define MBEDTLS_SHA512_PROCESS_ALT
464 #define MBEDTLS_DES_SETKEY_ALT
465 #define MBEDTLS_DES_CRYPT_ECB_ALT
466 #define MBEDTLS_DES3_CRYPT_ECB_ALT
467 #define MBEDTLS_AES_SETKEY_ENC_ALT
468 #define MBEDTLS_AES_SETKEY_DEC_ALT
469 #define MBEDTLS_AES_ENCRYPT_ALT
470 #define MBEDTLS_AES_DECRYPT_ALT
471 #define MBEDTLS_ECDH_GEN_PUBLIC_ALT
472 #define MBEDTLS_ECDH_COMPUTE_SHARED_ALT
473 #define MBEDTLS_ECDSA_VERIFY_ALT
474 #define MBEDTLS_ECDSA_SIGN_ALT
475 #define MBEDTLS_ECDSA_GENKEY_ALT
518 #define MBEDTLS_ECP_INTERNAL_ALT
520 #define MBEDTLS_ECP_RANDOMIZE_JAC_ALT
521 #define MBEDTLS_ECP_ADD_MIXED_ALT
522 #define MBEDTLS_ECP_DOUBLE_JAC_ALT
523 #define MBEDTLS_ECP_NORMALIZE_JAC_MANY_ALT
524 #define MBEDTLS_ECP_NORMALIZE_JAC_ALT
526 #define MBEDTLS_ECP_DOUBLE_ADD_MXZ_ALT
527 #define MBEDTLS_ECP_RANDOMIZE_MXZ_ALT
528 #define MBEDTLS_ECP_NORMALIZE_MXZ_ALT
545 #define MBEDTLS_TEST_NULL_ENTROPY
558 #define MBEDTLS_ENTROPY_HARDWARE_ALT
578 #define MBEDTLS_AES_ROM_TABLES
600 #define MBEDTLS_AES_FEWER_TABLES
609 #define MBEDTLS_CAMELLIA_SMALL_MEMORY
616 #define MBEDTLS_CIPHER_MODE_CBC
623 #define MBEDTLS_CIPHER_MODE_CFB
630 #define MBEDTLS_CIPHER_MODE_CTR
637 #define MBEDTLS_CIPHER_MODE_OFB
644 #define MBEDTLS_CIPHER_MODE_XTS
677 #define MBEDTLS_CIPHER_NULL_CIPHER
690 #define MBEDTLS_CIPHER_PADDING_PKCS7
691 #define MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
692 #define MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN
693 #define MBEDTLS_CIPHER_PADDING_ZEROS
700 #define MBEDTLS_CTR_DRBG_USE_128_BIT_KEY
718 #define MBEDTLS_ENABLE_WEAK_CIPHERSUITES
731 #define MBEDTLS_REMOVE_ARC4_CIPHERSUITES
751 #define MBEDTLS_REMOVE_3DES_CIPHERSUITES
762 #define MBEDTLS_ECP_DP_SECP192R1_ENABLED
763 #define MBEDTLS_ECP_DP_SECP224R1_ENABLED
764 #define MBEDTLS_ECP_DP_SECP256R1_ENABLED
765 #define MBEDTLS_ECP_DP_SECP384R1_ENABLED
766 #define MBEDTLS_ECP_DP_SECP521R1_ENABLED
767 #define MBEDTLS_ECP_DP_SECP192K1_ENABLED
768 #define MBEDTLS_ECP_DP_SECP224K1_ENABLED
769 #define MBEDTLS_ECP_DP_SECP256K1_ENABLED
770 #define MBEDTLS_ECP_DP_BP256R1_ENABLED
771 #define MBEDTLS_ECP_DP_BP384R1_ENABLED
772 #define MBEDTLS_ECP_DP_BP512R1_ENABLED
774 #define MBEDTLS_ECP_DP_CURVE25519_ENABLED
775 #define MBEDTLS_ECP_DP_CURVE448_ENABLED
786 #define MBEDTLS_ECP_NIST_OPTIM
808 #define MBEDTLS_ECP_NO_INTERNAL_RNG
833 #define MBEDTLS_ECP_RESTARTABLE
861 #define MBEDTLS_ECDH_LEGACY_CONTEXT
875 #define MBEDTLS_ECDSA_DETERMINISTIC
897 #define MBEDTLS_KEY_EXCHANGE_PSK_ENABLED
928 #define MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED
948 #define MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
973 #define MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED
1001 #define MBEDTLS_KEY_EXCHANGE_RSA_ENABLED
1034 #define MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED
1059 #define MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED
1083 #define MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED
1107 #define MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA_ENABLED
1131 #define MBEDTLS_KEY_EXCHANGE_ECDH_RSA_ENABLED
1150 #define MBEDTLS_KEY_EXCHANGE_ECJPAKE_ENABLED
1164 #define MBEDTLS_PK_PARSE_EC_EXTENDED
1179 #define MBEDTLS_ERROR_STRERROR_DUMMY
1188 #define MBEDTLS_GENPRIME
1195 #define MBEDTLS_FS_IO
1208 #define MBEDTLS_NO_DEFAULT_ENTROPY_SOURCES
1219 #define MBEDTLS_NO_PLATFORM_ENTROPY
1235 #define MBEDTLS_ENTROPY_FORCE_SHA256
1263 #define MBEDTLS_ENTROPY_NV_SEED
1278 #define MBEDTLS_PSA_CRYPTO_KEY_FILE_ID_ENCODES_OWNER
1291 #define MBEDTLS_MEMORY_DEBUG
1303 #define MBEDTLS_MEMORY_BACKTRACE
1312 #define MBEDTLS_PK_RSA_ALT_SUPPORT
1323 #define MBEDTLS_PKCS1_V15
1334 #define MBEDTLS_PKCS1_V21
1348 #define MBEDTLS_PSA_CRYPTO_SPM
1361 #define MBEDTLS_PSA_INJECT_ENTROPY
1372 #define MBEDTLS_RSA_NO_CRT
1379 #define MBEDTLS_SELF_TEST
1395 #define MBEDTLS_SHA256_SMALLER
1405 #define MBEDTLS_SHA512_SMALLER
1417 #define MBEDTLS_SHA512_NO_SHA384
1431 #define MBEDTLS_SSL_ALL_ALERT_MESSAGES
1445 #define MBEDTLS_SSL_RECORD_CHECKING
1473 #define MBEDTLS_SSL_DTLS_CONNECTION_ID
1484 #define MBEDTLS_SSL_ASYNC_PRIVATE
1511 #define MBEDTLS_SSL_CONTEXT_SERIALIZATION
1527 #define MBEDTLS_SSL_DEBUG_ALL
1545 #define MBEDTLS_SSL_ENCRYPT_THEN_MAC
1563 #define MBEDTLS_SSL_EXTENDED_MASTER_SECRET
1581 #define MBEDTLS_SSL_FALLBACK_SCSV
1603 #define MBEDTLS_SSL_KEEP_PEER_CERTIFICATE
1616 #define MBEDTLS_SSL_HW_RECORD_ACCEL
1628 #define MBEDTLS_SSL_CBC_RECORD_SPLITTING
1650 #define MBEDTLS_SSL_RENEGOTIATION
1663 #define MBEDTLS_SSL_SRV_SUPPORT_SSLV2_CLIENT_HELLO
1673 #define MBEDTLS_SSL_SRV_RESPECT_CLIENT_PREFERENCE
1682 #define MBEDTLS_SSL_MAX_FRAGMENT_LENGTH
1697 #define MBEDTLS_SSL_PROTO_SSL3
1709 #define MBEDTLS_SSL_PROTO_TLS1
1721 #define MBEDTLS_SSL_PROTO_TLS1_1
1733 #define MBEDTLS_SSL_PROTO_TLS1_2
1752 #define MBEDTLS_SSL_PROTO_TLS1_3_EXPERIMENTAL
1767 #define MBEDTLS_SSL_PROTO_DTLS
1776 #define MBEDTLS_SSL_ALPN
1791 #define MBEDTLS_SSL_DTLS_ANTI_REPLAY
1809 #define MBEDTLS_SSL_DTLS_HELLO_VERIFY
1825 #define MBEDTLS_SSL_DTLS_CLIENT_PORT_REUSE
1836 #define MBEDTLS_SSL_DTLS_BADMAC_LIMIT
1850 #define MBEDTLS_SSL_SESSION_TICKETS
1860 #define MBEDTLS_SSL_EXPORT_KEYS
1871 #define MBEDTLS_SSL_SERVER_NAME_INDICATION
1880 #define MBEDTLS_SSL_TRUNCATED_HMAC
1904 #define MBEDTLS_SSL_TRUNCATED_HMAC_COMPAT
1911 #define MBEDTLS_SSL_VARIABLE_BUFFER_LENGTH
1928 #define MBEDTLS_TEST_CONSTANT_FLOW_MEMSAN
1947 #define MBEDTLS_TEST_CONSTANT_FLOW_VALGRIND
1967 #define MBEDTLS_TEST_HOOKS
1978 #define MBEDTLS_THREADING_ALT
1989 #define MBEDTLS_THREADING_PTHREAD
2016 #define MBEDTLS_USE_PSA_CRYPTO
2029 #define MBEDTLS_VERSION_FEATURES
2039 #define MBEDTLS_X509_ALLOW_EXTENSIONS_NON_V3
2051 #define MBEDTLS_X509_ALLOW_UNSUPPORTED_CRITICAL_EXTENSION
2070 #define MBEDTLS_X509_TRUSTED_CERTIFICATE_CALLBACK
2084 #define MBEDTLS_X509_CHECK_KEY_USAGE
2097 #define MBEDTLS_X509_CHECK_EXTENDED_KEY_USAGE
2107 #define MBEDTLS_X509_RSASSA_PSS_SUPPORT
2132 #define MBEDTLS_ZLIB_SUPPORT
2154 #define MBEDTLS_AESNI_C
2229 #define MBEDTLS_AES_C
2257 #define MBEDTLS_ARC4_C
2271 #define MBEDTLS_ASN1_PARSE_C
2285 #define MBEDTLS_ASN1_WRITE_C
2297 #define MBEDTLS_BASE64_C
2314 #define MBEDTLS_BIGNUM_C
2323 #define MBEDTLS_BLOWFISH_C
2378 #define MBEDTLS_CAMELLIA_C
2430 #define MBEDTLS_ARIA_C
2444 #define MBEDTLS_CCM_C
2456 #define MBEDTLS_CERTS_C
2465 #define MBEDTLS_CHACHA20_C
2476 #define MBEDTLS_CHACHAPOLY_C
2488 #define MBEDTLS_CIPHER_C
2501 #define MBEDTLS_CMAC_C
2521 #define MBEDTLS_CTR_DRBG_C
2535 #define MBEDTLS_DEBUG_C
2564 #define MBEDTLS_DES_C
2585 #define MBEDTLS_DHM_C
2601 #define MBEDTLS_ECDH_C
2618 #define MBEDTLS_ECDSA_C
2637 #define MBEDTLS_ECJPAKE_C
2651 #define MBEDTLS_ECP_C
2665 #define MBEDTLS_ENTROPY_C
2677 #define MBEDTLS_ERROR_C
2691 #define MBEDTLS_GCM_C
2714 #define MBEDTLS_HAVEGE_C
2729 #define MBEDTLS_HKDF_C
2743 #define MBEDTLS_HMAC_DRBG_C
2756 #define MBEDTLS_NIST_KW_C
2768 #define MBEDTLS_MD_C
2785 #define MBEDTLS_MD2_C
2802 #define MBEDTLS_MD4_C
2824 #define MBEDTLS_MD5_C
2840 #define MBEDTLS_MEMORY_BUFFER_ALLOC_C
2859 #define MBEDTLS_NET_C
2882 #define MBEDTLS_OID_C
2896 #define MBEDTLS_PADLOCK_C
2914 #define MBEDTLS_PEM_PARSE_C
2930 #define MBEDTLS_PEM_WRITE_C
2946 #define MBEDTLS_PK_C
2961 #define MBEDTLS_PK_PARSE_C
2975 #define MBEDTLS_PK_WRITE_C
2988 #define MBEDTLS_PKCS5_C
3006 #define MBEDTLS_PKCS11_C
3022 #define MBEDTLS_PKCS12_C
3042 #define MBEDTLS_PLATFORM_C
3052 #define MBEDTLS_POLY1305_C
3068 #define MBEDTLS_PSA_CRYPTO_C
3084 #define MBEDTLS_PSA_CRYPTO_SE_C
3097 #define MBEDTLS_PSA_CRYPTO_STORAGE_C
3109 #define MBEDTLS_PSA_ITS_FILE_C
3120 #define MBEDTLS_RIPEMD160_C
3139 #define MBEDTLS_RSA_C
3161 #define MBEDTLS_SHA1_C
3178 #define MBEDTLS_SHA256_C
3193 #define MBEDTLS_SHA512_C
3205 #define MBEDTLS_SSL_CACHE_C
3215 #define MBEDTLS_SSL_COOKIE_C
3227 #define MBEDTLS_SSL_TICKET_C
3241 #define MBEDTLS_SSL_CLI_C
3255 #define MBEDTLS_SSL_SRV_C
3271 #define MBEDTLS_SSL_TLS_C
3293 #define MBEDTLS_THREADING_C
3316 #define MBEDTLS_TIMING_C
3327 #define MBEDTLS_VERSION_C
3344 #define MBEDTLS_X509_USE_C
3360 #define MBEDTLS_X509_CRT_PARSE_C
3374 #define MBEDTLS_X509_CRL_PARSE_C
3388 #define MBEDTLS_X509_CSR_PARSE_C
3401 #define MBEDTLS_X509_CREATE_C
3414 #define MBEDTLS_X509_CRT_WRITE_C
3427 #define MBEDTLS_X509_CSR_WRITE_C
3437 #define MBEDTLS_XTEA_C
3749 #define MBEDTLS_TLS_DEFAULT_ALLOW_SHA1_IN_KEY_EXCHANGE
3806 #if defined(MBEDTLS_USER_CONFIG_FILE)
3807 #include MBEDTLS_USER_CONFIG_FILE
Consistency checks for configuration options.