mbed TLS v2.14.1
config.h
Go to the documentation of this file.
1 
10 /*
11  * Copyright (C) 2006-2018, ARM Limited, All Rights Reserved
12  * SPDX-License-Identifier: Apache-2.0
13  *
14  * Licensed under the Apache License, Version 2.0 (the "License"); you may
15  * not use this file except in compliance with the License.
16  * You may obtain a copy of the License at
17  *
18  * http://www.apache.org/licenses/LICENSE-2.0
19  *
20  * Unless required by applicable law or agreed to in writing, software
21  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
22  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
23  * See the License for the specific language governing permissions and
24  * limitations under the License.
25  *
26  * This file is part of mbed TLS (https://tls.mbed.org)
27  */
28 
29 #ifndef MBEDTLS_CONFIG_H
30 #define MBEDTLS_CONFIG_H
31 
32 #if defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
33 #define _CRT_SECURE_NO_DEPRECATE 1
34 #endif
35 
61 #define MBEDTLS_HAVE_ASM
62 
89 //#define MBEDTLS_NO_UDBL_DIVISION
90 
111 //#define MBEDTLS_NO_64BIT_MULTIPLICATION
112 
120 //#define MBEDTLS_HAVE_SSE2
121 
135 #define MBEDTLS_HAVE_TIME
136 
156 #define MBEDTLS_HAVE_TIME_DATE
157 
180 //#define MBEDTLS_PLATFORM_MEMORY
181 
199 //#define MBEDTLS_PLATFORM_NO_STD_FUNCTIONS
200 
224 //#define MBEDTLS_PLATFORM_EXIT_ALT
225 //#define MBEDTLS_PLATFORM_TIME_ALT
226 //#define MBEDTLS_PLATFORM_FPRINTF_ALT
227 //#define MBEDTLS_PLATFORM_PRINTF_ALT
228 //#define MBEDTLS_PLATFORM_SNPRINTF_ALT
229 //#define MBEDTLS_PLATFORM_NV_SEED_ALT
230 //#define MBEDTLS_PLATFORM_SETUP_TEARDOWN_ALT
231 
245 #define MBEDTLS_DEPRECATED_WARNING
246 
257 //#define MBEDTLS_DEPRECATED_REMOVED
258 
259 /* \} name SECTION: System support */
260 
280 //#define MBEDTLS_TIMING_ALT
281 
307 //#define MBEDTLS_AES_ALT
308 //#define MBEDTLS_ARC4_ALT
309 //#define MBEDTLS_ARIA_ALT
310 //#define MBEDTLS_BLOWFISH_ALT
311 //#define MBEDTLS_CAMELLIA_ALT
312 //#define MBEDTLS_CCM_ALT
313 //#define MBEDTLS_CHACHA20_ALT
314 //#define MBEDTLS_CHACHAPOLY_ALT
315 //#define MBEDTLS_CMAC_ALT
316 //#define MBEDTLS_DES_ALT
317 //#define MBEDTLS_DHM_ALT
318 //#define MBEDTLS_ECJPAKE_ALT
319 //#define MBEDTLS_GCM_ALT
320 //#define MBEDTLS_NIST_KW_ALT
321 //#define MBEDTLS_MD2_ALT
322 //#define MBEDTLS_MD4_ALT
323 //#define MBEDTLS_MD5_ALT
324 //#define MBEDTLS_POLY1305_ALT
325 //#define MBEDTLS_RIPEMD160_ALT
326 //#define MBEDTLS_RSA_ALT
327 //#define MBEDTLS_SHA1_ALT
328 //#define MBEDTLS_SHA256_ALT
329 //#define MBEDTLS_SHA512_ALT
330 //#define MBEDTLS_XTEA_ALT
331 
332 /*
333  * When replacing the elliptic curve module, pleace consider, that it is
334  * implemented with two .c files:
335  * - ecp.c
336  * - ecp_curves.c
337  * You can replace them very much like all the other MBEDTLS__MODULE_NAME__ALT
338  * macros as described above. The only difference is that you have to make sure
339  * that you provide functionality for both .c files.
340  */
341 //#define MBEDTLS_ECP_ALT
342 
378 //#define MBEDTLS_MD2_PROCESS_ALT
379 //#define MBEDTLS_MD4_PROCESS_ALT
380 //#define MBEDTLS_MD5_PROCESS_ALT
381 //#define MBEDTLS_RIPEMD160_PROCESS_ALT
382 //#define MBEDTLS_SHA1_PROCESS_ALT
383 //#define MBEDTLS_SHA256_PROCESS_ALT
384 //#define MBEDTLS_SHA512_PROCESS_ALT
385 //#define MBEDTLS_DES_SETKEY_ALT
386 //#define MBEDTLS_DES_CRYPT_ECB_ALT
387 //#define MBEDTLS_DES3_CRYPT_ECB_ALT
388 //#define MBEDTLS_AES_SETKEY_ENC_ALT
389 //#define MBEDTLS_AES_SETKEY_DEC_ALT
390 //#define MBEDTLS_AES_ENCRYPT_ALT
391 //#define MBEDTLS_AES_DECRYPT_ALT
392 //#define MBEDTLS_ECDH_GEN_PUBLIC_ALT
393 //#define MBEDTLS_ECDH_COMPUTE_SHARED_ALT
394 //#define MBEDTLS_ECDSA_VERIFY_ALT
395 //#define MBEDTLS_ECDSA_SIGN_ALT
396 //#define MBEDTLS_ECDSA_GENKEY_ALT
397 
438 /* Required for all the functions in this section */
439 //#define MBEDTLS_ECP_INTERNAL_ALT
440 /* Support for Weierstrass curves with Jacobi representation */
441 //#define MBEDTLS_ECP_RANDOMIZE_JAC_ALT
442 //#define MBEDTLS_ECP_ADD_MIXED_ALT
443 //#define MBEDTLS_ECP_DOUBLE_JAC_ALT
444 //#define MBEDTLS_ECP_NORMALIZE_JAC_MANY_ALT
445 //#define MBEDTLS_ECP_NORMALIZE_JAC_ALT
446 /* Support for curves with Montgomery arithmetic */
447 //#define MBEDTLS_ECP_DOUBLE_ADD_MXZ_ALT
448 //#define MBEDTLS_ECP_RANDOMIZE_MXZ_ALT
449 //#define MBEDTLS_ECP_NORMALIZE_MXZ_ALT
450 
466 //#define MBEDTLS_TEST_NULL_ENTROPY
467 
479 //#define MBEDTLS_ENTROPY_HARDWARE_ALT
480 
499 //#define MBEDTLS_AES_ROM_TABLES
500 
521 //#define MBEDTLS_AES_FEWER_TABLES
522 
530 //#define MBEDTLS_CAMELLIA_SMALL_MEMORY
531 
537 #define MBEDTLS_CIPHER_MODE_CBC
538 
544 #define MBEDTLS_CIPHER_MODE_CFB
545 
551 #define MBEDTLS_CIPHER_MODE_CTR
552 
558 #define MBEDTLS_CIPHER_MODE_OFB
559 
565 #define MBEDTLS_CIPHER_MODE_XTS
566 
598 //#define MBEDTLS_CIPHER_NULL_CIPHER
599 
611 #define MBEDTLS_CIPHER_PADDING_PKCS7
612 #define MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
613 #define MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN
614 #define MBEDTLS_CIPHER_PADDING_ZEROS
615 
632 //#define MBEDTLS_ENABLE_WEAK_CIPHERSUITES
633 
645 #define MBEDTLS_REMOVE_ARC4_CIPHERSUITES
646 
655 #define MBEDTLS_ECP_DP_SECP192R1_ENABLED
656 #define MBEDTLS_ECP_DP_SECP224R1_ENABLED
657 #define MBEDTLS_ECP_DP_SECP256R1_ENABLED
658 #define MBEDTLS_ECP_DP_SECP384R1_ENABLED
659 #define MBEDTLS_ECP_DP_SECP521R1_ENABLED
660 #define MBEDTLS_ECP_DP_SECP192K1_ENABLED
661 #define MBEDTLS_ECP_DP_SECP224K1_ENABLED
662 #define MBEDTLS_ECP_DP_SECP256K1_ENABLED
663 #define MBEDTLS_ECP_DP_BP256R1_ENABLED
664 #define MBEDTLS_ECP_DP_BP384R1_ENABLED
665 #define MBEDTLS_ECP_DP_BP512R1_ENABLED
666 #define MBEDTLS_ECP_DP_CURVE25519_ENABLED
667 #define MBEDTLS_ECP_DP_CURVE448_ENABLED
668 
678 #define MBEDTLS_ECP_NIST_OPTIM
679 
702 //#define MBEDTLS_ECP_RESTARTABLE
703 
716 #define MBEDTLS_ECDSA_DETERMINISTIC
717 
738 #define MBEDTLS_KEY_EXCHANGE_PSK_ENABLED
739 
769 #define MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED
770 
789 #define MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
790 
814 #define MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED
815 
842 #define MBEDTLS_KEY_EXCHANGE_RSA_ENABLED
843 
875 #define MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED
876 
900 #define MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED
901 
924 #define MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED
925 
948 #define MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA_ENABLED
949 
972 #define MBEDTLS_KEY_EXCHANGE_ECDH_RSA_ENABLED
973 
991 //#define MBEDTLS_KEY_EXCHANGE_ECJPAKE_ENABLED
992 
1005 #define MBEDTLS_PK_PARSE_EC_EXTENDED
1006 
1020 #define MBEDTLS_ERROR_STRERROR_DUMMY
1021 
1029 #define MBEDTLS_GENPRIME
1030 
1036 #define MBEDTLS_FS_IO
1037 
1049 //#define MBEDTLS_NO_DEFAULT_ENTROPY_SOURCES
1050 
1060 //#define MBEDTLS_NO_PLATFORM_ENTROPY
1061 
1076 //#define MBEDTLS_ENTROPY_FORCE_SHA256
1077 
1104 //#define MBEDTLS_ENTROPY_NV_SEED
1105 
1117 //#define MBEDTLS_MEMORY_DEBUG
1118 
1129 //#define MBEDTLS_MEMORY_BACKTRACE
1130 
1138 #define MBEDTLS_PK_RSA_ALT_SUPPORT
1139 
1149 #define MBEDTLS_PKCS1_V15
1150 
1160 #define MBEDTLS_PKCS1_V21
1161 
1171 //#define MBEDTLS_RSA_NO_CRT
1172 
1178 #define MBEDTLS_SELF_TEST
1179 
1194 //#define MBEDTLS_SHA256_SMALLER
1195 
1208 #define MBEDTLS_SSL_ALL_ALERT_MESSAGES
1209 
1219 //#define MBEDTLS_SSL_ASYNC_PRIVATE
1220 
1235 //#define MBEDTLS_SSL_DEBUG_ALL
1236 
1253 #define MBEDTLS_SSL_ENCRYPT_THEN_MAC
1254 
1271 #define MBEDTLS_SSL_EXTENDED_MASTER_SECRET
1272 
1288 #define MBEDTLS_SSL_FALLBACK_SCSV
1289 
1298 //#define MBEDTLS_SSL_HW_RECORD_ACCEL
1299 
1310 #define MBEDTLS_SSL_CBC_RECORD_SPLITTING
1311 
1332 #define MBEDTLS_SSL_RENEGOTIATION
1333 
1342 //#define MBEDTLS_SSL_SRV_SUPPORT_SSLV2_CLIENT_HELLO
1343 
1352 //#define MBEDTLS_SSL_SRV_RESPECT_CLIENT_PREFERENCE
1353 
1361 #define MBEDTLS_SSL_MAX_FRAGMENT_LENGTH
1362 
1373 //#define MBEDTLS_SSL_PROTO_SSL3
1374 
1385 #define MBEDTLS_SSL_PROTO_TLS1
1386 
1397 #define MBEDTLS_SSL_PROTO_TLS1_1
1398 
1409 #define MBEDTLS_SSL_PROTO_TLS1_2
1410 
1424 #define MBEDTLS_SSL_PROTO_DTLS
1425 
1433 #define MBEDTLS_SSL_ALPN
1434 
1448 #define MBEDTLS_SSL_DTLS_ANTI_REPLAY
1449 
1466 #define MBEDTLS_SSL_DTLS_HELLO_VERIFY
1467 
1482 #define MBEDTLS_SSL_DTLS_CLIENT_PORT_REUSE
1483 
1493 #define MBEDTLS_SSL_DTLS_BADMAC_LIMIT
1494 
1507 #define MBEDTLS_SSL_SESSION_TICKETS
1508 
1517 #define MBEDTLS_SSL_EXPORT_KEYS
1518 
1528 #define MBEDTLS_SSL_SERVER_NAME_INDICATION
1529 
1537 #define MBEDTLS_SSL_TRUNCATED_HMAC
1538 
1561 //#define MBEDTLS_SSL_TRUNCATED_HMAC_COMPAT
1562 
1572 //#define MBEDTLS_THREADING_ALT
1573 
1583 #define MBEDTLS_THREADING_PTHREAD
1584 
1596 #define MBEDTLS_VERSION_FEATURES
1597 
1606 //#define MBEDTLS_X509_ALLOW_EXTENSIONS_NON_V3
1607 
1618 //#define MBEDTLS_X509_ALLOW_UNSUPPORTED_CRITICAL_EXTENSION
1619 
1632 #define MBEDTLS_X509_CHECK_KEY_USAGE
1633 
1645 #define MBEDTLS_X509_CHECK_EXTENDED_KEY_USAGE
1646 
1655 #define MBEDTLS_X509_RSASSA_PSS_SUPPORT
1656 
1680 //#define MBEDTLS_ZLIB_SUPPORT
1681 /* \} name SECTION: mbed TLS feature support */
1682 
1702 #define MBEDTLS_AESNI_C
1703 
1777 #define MBEDTLS_AES_C
1778 
1805 #define MBEDTLS_ARC4_C
1806 
1819 #define MBEDTLS_ASN1_PARSE_C
1820 
1833 #define MBEDTLS_ASN1_WRITE_C
1834 
1845 #define MBEDTLS_BASE64_C
1846 
1862 #define MBEDTLS_BIGNUM_C
1863 
1871 #define MBEDTLS_BLOWFISH_C
1872 
1926 #define MBEDTLS_CAMELLIA_C
1927 
1978 //#define MBEDTLS_ARIA_C
1979 
1992 #define MBEDTLS_CCM_C
1993 
2004 #define MBEDTLS_CERTS_C
2005 
2013 #define MBEDTLS_CHACHA20_C
2014 
2024 #define MBEDTLS_CHACHAPOLY_C
2025 
2036 #define MBEDTLS_CIPHER_C
2037 
2049 //#define MBEDTLS_CMAC_C
2050 
2065 #define MBEDTLS_CTR_DRBG_C
2066 
2079 #define MBEDTLS_DEBUG_C
2080 
2108 #define MBEDTLS_DES_C
2109 
2129 #define MBEDTLS_DHM_C
2130 
2145 #define MBEDTLS_ECDH_C
2146 
2160 #define MBEDTLS_ECDSA_C
2161 
2179 //#define MBEDTLS_ECJPAKE_C
2180 
2193 #define MBEDTLS_ECP_C
2194 
2207 #define MBEDTLS_ENTROPY_C
2208 
2219 #define MBEDTLS_ERROR_C
2220 
2233 #define MBEDTLS_GCM_C
2234 
2256 #define MBEDTLS_HAVEGE_C
2257 
2271 #define MBEDTLS_HKDF_C
2272 
2285 #define MBEDTLS_HMAC_DRBG_C
2286 
2298 //#define MBEDTLS_NIST_KW_C
2299 
2310 #define MBEDTLS_MD_C
2311 
2327 #define MBEDTLS_MD2_C
2328 
2344 #define MBEDTLS_MD4_C
2345 
2366 #define MBEDTLS_MD5_C
2367 
2382 //#define MBEDTLS_MEMORY_BUFFER_ALLOC_C
2383 
2401 #define MBEDTLS_NET_C
2402 
2424 #define MBEDTLS_OID_C
2425 
2438 #define MBEDTLS_PADLOCK_C
2439 
2456 #define MBEDTLS_PEM_PARSE_C
2457 
2472 #define MBEDTLS_PEM_WRITE_C
2473 
2488 #define MBEDTLS_PK_C
2489 
2503 #define MBEDTLS_PK_PARSE_C
2504 
2517 #define MBEDTLS_PK_WRITE_C
2518 
2530 #define MBEDTLS_PKCS5_C
2531 
2545 //#define MBEDTLS_PKCS11_C
2546 
2561 #define MBEDTLS_PKCS12_C
2562 
2581 #define MBEDTLS_PLATFORM_C
2582 
2591 #define MBEDTLS_POLY1305_C
2592 
2602 #define MBEDTLS_RIPEMD160_C
2603 
2621 #define MBEDTLS_RSA_C
2622 
2643 #define MBEDTLS_SHA1_C
2644 
2660 #define MBEDTLS_SHA256_C
2661 
2675 #define MBEDTLS_SHA512_C
2676 
2687 #define MBEDTLS_SSL_CACHE_C
2688 
2697 #define MBEDTLS_SSL_COOKIE_C
2698 
2709 #define MBEDTLS_SSL_TICKET_C
2710 
2723 #define MBEDTLS_SSL_CLI_C
2724 
2737 #define MBEDTLS_SSL_SRV_C
2738 
2753 #define MBEDTLS_SSL_TLS_C
2754 
2775 #define MBEDTLS_THREADING_C
2776 
2798 #define MBEDTLS_TIMING_C
2799 
2809 #define MBEDTLS_VERSION_C
2810 
2826 #define MBEDTLS_X509_USE_C
2827 
2842 #define MBEDTLS_X509_CRT_PARSE_C
2843 
2856 #define MBEDTLS_X509_CRL_PARSE_C
2857 
2870 #define MBEDTLS_X509_CSR_PARSE_C
2871 
2883 #define MBEDTLS_X509_CREATE_C
2884 
2896 #define MBEDTLS_X509_CRT_WRITE_C
2897 
2909 #define MBEDTLS_X509_CSR_WRITE_C
2910 
2919 #define MBEDTLS_XTEA_C
2920 
2921 /* \} name SECTION: mbed TLS modules */
2922 
2938 /* MPI / BIGNUM options */
2939 //#define MBEDTLS_MPI_WINDOW_SIZE 6 /**< Maximum windows size used. */
2940 //#define MBEDTLS_MPI_MAX_SIZE 1024 /**< Maximum number of bytes for usable MPIs. */
2941 
2942 /* CTR_DRBG options */
2943 //#define MBEDTLS_CTR_DRBG_ENTROPY_LEN 48 /**< Amount of entropy used per seed by default (48 with SHA-512, 32 with SHA-256) */
2944 //#define MBEDTLS_CTR_DRBG_RESEED_INTERVAL 10000 /**< Interval before reseed is performed by default */
2945 //#define MBEDTLS_CTR_DRBG_MAX_INPUT 256 /**< Maximum number of additional input bytes */
2946 //#define MBEDTLS_CTR_DRBG_MAX_REQUEST 1024 /**< Maximum number of requested bytes per call */
2947 //#define MBEDTLS_CTR_DRBG_MAX_SEED_INPUT 384 /**< Maximum size of (re)seed buffer */
2948 //#define MBEDTLS_CTR_DRBG_USE_128_BIT_KEY /**< Use 128-bit key for CTR_DRBG - may reduce security (see ctr_drbg.h) */
2949 
2950 /* HMAC_DRBG options */
2951 //#define MBEDTLS_HMAC_DRBG_RESEED_INTERVAL 10000 /**< Interval before reseed is performed by default */
2952 //#define MBEDTLS_HMAC_DRBG_MAX_INPUT 256 /**< Maximum number of additional input bytes */
2953 //#define MBEDTLS_HMAC_DRBG_MAX_REQUEST 1024 /**< Maximum number of requested bytes per call */
2954 //#define MBEDTLS_HMAC_DRBG_MAX_SEED_INPUT 384 /**< Maximum size of (re)seed buffer */
2955 
2956 /* ECP options */
2957 //#define MBEDTLS_ECP_MAX_BITS 521 /**< Maximum bit size of groups */
2958 //#define MBEDTLS_ECP_WINDOW_SIZE 6 /**< Maximum window size used */
2959 //#define MBEDTLS_ECP_FIXED_POINT_OPTIM 1 /**< Enable fixed-point speed-up */
2960 
2961 /* Entropy options */
2962 //#define MBEDTLS_ENTROPY_MAX_SOURCES 20 /**< Maximum number of sources supported */
2963 //#define MBEDTLS_ENTROPY_MAX_GATHER 128 /**< Maximum amount requested from entropy sources */
2964 //#define MBEDTLS_ENTROPY_MIN_HARDWARE 32 /**< Default minimum number of bytes required for the hardware entropy source mbedtls_hardware_poll() before entropy is released */
2965 
2966 /* Memory buffer allocator options */
2967 //#define MBEDTLS_MEMORY_ALIGN_MULTIPLE 4 /**< Align on multiples of this value */
2968 
2969 /* Platform options */
2970 //#define MBEDTLS_PLATFORM_STD_MEM_HDR <stdlib.h> /**< Header to include if MBEDTLS_PLATFORM_NO_STD_FUNCTIONS is defined. Don't define if no header is needed. */
2971 //#define MBEDTLS_PLATFORM_STD_CALLOC calloc /**< Default allocator to use, can be undefined */
2972 //#define MBEDTLS_PLATFORM_STD_FREE free /**< Default free to use, can be undefined */
2973 //#define MBEDTLS_PLATFORM_STD_EXIT exit /**< Default exit to use, can be undefined */
2974 //#define MBEDTLS_PLATFORM_STD_TIME time /**< Default time to use, can be undefined. MBEDTLS_HAVE_TIME must be enabled */
2975 //#define MBEDTLS_PLATFORM_STD_FPRINTF fprintf /**< Default fprintf to use, can be undefined */
2976 //#define MBEDTLS_PLATFORM_STD_PRINTF printf /**< Default printf to use, can be undefined */
2977 /* Note: your snprintf must correclty zero-terminate the buffer! */
2978 //#define MBEDTLS_PLATFORM_STD_SNPRINTF snprintf /**< Default snprintf to use, can be undefined */
2979 //#define MBEDTLS_PLATFORM_STD_EXIT_SUCCESS 0 /**< Default exit value to use, can be undefined */
2980 //#define MBEDTLS_PLATFORM_STD_EXIT_FAILURE 1 /**< Default exit value to use, can be undefined */
2981 //#define MBEDTLS_PLATFORM_STD_NV_SEED_READ mbedtls_platform_std_nv_seed_read /**< Default nv_seed_read function to use, can be undefined */
2982 //#define MBEDTLS_PLATFORM_STD_NV_SEED_WRITE mbedtls_platform_std_nv_seed_write /**< Default nv_seed_write function to use, can be undefined */
2983 //#define MBEDTLS_PLATFORM_STD_NV_SEED_FILE "seedfile" /**< Seed file to read/write with default implementation */
2984 
2985 /* To Use Function Macros MBEDTLS_PLATFORM_C must be enabled */
2986 /* MBEDTLS_PLATFORM_XXX_MACRO and MBEDTLS_PLATFORM_XXX_ALT cannot both be defined */
2987 //#define MBEDTLS_PLATFORM_CALLOC_MACRO calloc /**< Default allocator macro to use, can be undefined */
2988 //#define MBEDTLS_PLATFORM_FREE_MACRO free /**< Default free macro to use, can be undefined */
2989 //#define MBEDTLS_PLATFORM_EXIT_MACRO exit /**< Default exit macro to use, can be undefined */
2990 //#define MBEDTLS_PLATFORM_TIME_MACRO time /**< Default time macro to use, can be undefined. MBEDTLS_HAVE_TIME must be enabled */
2991 //#define MBEDTLS_PLATFORM_TIME_TYPE_MACRO time_t /**< Default time macro to use, can be undefined. MBEDTLS_HAVE_TIME must be enabled */
2992 //#define MBEDTLS_PLATFORM_FPRINTF_MACRO fprintf /**< Default fprintf macro to use, can be undefined */
2993 //#define MBEDTLS_PLATFORM_PRINTF_MACRO printf /**< Default printf macro to use, can be undefined */
2994 /* Note: your snprintf must correclty zero-terminate the buffer! */
2995 //#define MBEDTLS_PLATFORM_SNPRINTF_MACRO snprintf /**< Default snprintf macro to use, can be undefined */
2996 //#define MBEDTLS_PLATFORM_NV_SEED_READ_MACRO mbedtls_platform_std_nv_seed_read /**< Default nv_seed_read function to use, can be undefined */
2997 //#define MBEDTLS_PLATFORM_NV_SEED_WRITE_MACRO mbedtls_platform_std_nv_seed_write /**< Default nv_seed_write function to use, can be undefined */
2998 
2999 /* SSL Cache options */
3000 //#define MBEDTLS_SSL_CACHE_DEFAULT_TIMEOUT 86400 /**< 1 day */
3001 //#define MBEDTLS_SSL_CACHE_DEFAULT_MAX_ENTRIES 50 /**< Maximum entries in cache */
3002 
3003 /* SSL options */
3004 
3015 //#define MBEDTLS_SSL_MAX_CONTENT_LEN 16384
3016 
3024 //#define MBEDTLS_SSL_IN_CONTENT_LEN 16384
3025 
3047 //#define MBEDTLS_SSL_OUT_CONTENT_LEN 16384
3048 
3064 //#define MBEDTLS_SSL_DTLS_MAX_BUFFERING 32768
3065 
3066 //#define MBEDTLS_SSL_DEFAULT_TICKET_LIFETIME 86400 /**< Lifetime of session tickets (if enabled) */
3067 //#define MBEDTLS_PSK_MAX_LEN 32 /**< Max size of TLS pre-shared keys, in bytes (default 256 bits) */
3068 //#define MBEDTLS_SSL_COOKIE_TIMEOUT 60 /**< Default expiration delay of DTLS cookies, in seconds if HAVE_TIME, or in number of cookies issued */
3069 
3082 //#define MBEDTLS_SSL_CIPHERSUITES MBEDTLS_TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,MBEDTLS_TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
3083 
3084 /* X509 options */
3085 //#define MBEDTLS_X509_MAX_INTERMEDIATE_CA 8 /**< Maximum number of intermediate CAs in a verification chain. */
3086 //#define MBEDTLS_X509_MAX_FILE_PATH_LEN 512 /**< Maximum length of a path/filename string in bytes including the null terminator character ('\0'). */
3087 
3100 // #define MBEDTLS_TLS_DEFAULT_ALLOW_SHA1_IN_CERTIFICATES
3101 
3117 #define MBEDTLS_TLS_DEFAULT_ALLOW_SHA1_IN_KEY_EXCHANGE
3118 
3137 //#define MBEDTLS_PLATFORM_ZEROIZE_ALT
3138 
3156 //#define MBEDTLS_PLATFORM_GMTIME_R_ALT
3157 
3158 /* \} name SECTION: Customisation configuration options */
3159 
3160 /* Target and application specific configurations
3161  *
3162  * Allow user to override any previous default.
3163  *
3164  */
3165 #if defined(MBEDTLS_USER_CONFIG_FILE)
3166 #include MBEDTLS_USER_CONFIG_FILE
3167 #endif
3168 
3169 #include "check_config.h"
3170 
3171 #endif /* MBEDTLS_CONFIG_H */