PolarSSL is now part of ARM Official announcement and rebranded as mbed TLS.

API Documentation (Doxygen generated)

These pages are generated with doxygen directly from the source code!

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 
98 //#define MBEDTLS_HAVE_SSE2
99 
113 #define MBEDTLS_HAVE_TIME
114 
125 #define MBEDTLS_HAVE_TIME_DATE
126 
149 #define MBEDTLS_PLATFORM_MEMORY
150 
168 //#define MBEDTLS_PLATFORM_NO_STD_FUNCTIONS
169 
193 #define MBEDTLS_PLATFORM_EXIT_ALT
194 #define MBEDTLS_PLATFORM_TIME_ALT
195 #define MBEDTLS_PLATFORM_FPRINTF_ALT
196 #define MBEDTLS_PLATFORM_PRINTF_ALT
197 #define MBEDTLS_PLATFORM_SNPRINTF_ALT
198 //#define MBEDTLS_PLATFORM_NV_SEED_ALT
199 //#define MBEDTLS_PLATFORM_SETUP_TEARDOWN_ALT
200 
214 #define MBEDTLS_DEPRECATED_WARNING
215 
226 //#define MBEDTLS_DEPRECATED_REMOVED
227 
228 /* \} name SECTION: System support */
229 
249 //#define MBEDTLS_TIMING_ALT
250 
276 //#define MBEDTLS_AES_ALT
277 //#define MBEDTLS_ARC4_ALT
278 //#define MBEDTLS_ARIA_ALT
279 //#define MBEDTLS_BLOWFISH_ALT
280 //#define MBEDTLS_CAMELLIA_ALT
281 //#define MBEDTLS_CCM_ALT
282 //#define MBEDTLS_CMAC_ALT
283 //#define MBEDTLS_DES_ALT
284 //#define MBEDTLS_DHM_ALT
285 //#define MBEDTLS_ECJPAKE_ALT
286 //#define MBEDTLS_GCM_ALT
287 //#define MBEDTLS_MD2_ALT
288 //#define MBEDTLS_MD4_ALT
289 //#define MBEDTLS_MD5_ALT
290 //#define MBEDTLS_RIPEMD160_ALT
291 //#define MBEDTLS_RSA_ALT
292 //#define MBEDTLS_SHA1_ALT
293 //#define MBEDTLS_SHA256_ALT
294 //#define MBEDTLS_SHA512_ALT
295 //#define MBEDTLS_XTEA_ALT
296 
297 /*
298  * When replacing the elliptic curve module, pleace consider, that it is
299  * implemented with two .c files:
300  * - ecp.c
301  * - ecp_curves.c
302  * You can replace them very much like all the other MBEDTLS__MODULE_NAME__ALT
303  * macros as described above. The only difference is that you have to make sure
304  * that you provide functionality for both .c files.
305  */
306 //#define MBEDTLS_ECP_ALT
307 
343 //#define MBEDTLS_MD2_PROCESS_ALT
344 //#define MBEDTLS_MD4_PROCESS_ALT
345 //#define MBEDTLS_MD5_PROCESS_ALT
346 //#define MBEDTLS_RIPEMD160_PROCESS_ALT
347 //#define MBEDTLS_SHA1_PROCESS_ALT
348 //#define MBEDTLS_SHA256_PROCESS_ALT
349 //#define MBEDTLS_SHA512_PROCESS_ALT
350 //#define MBEDTLS_DES_SETKEY_ALT
351 //#define MBEDTLS_DES_CRYPT_ECB_ALT
352 //#define MBEDTLS_DES3_CRYPT_ECB_ALT
353 //#define MBEDTLS_AES_SETKEY_ENC_ALT
354 //#define MBEDTLS_AES_SETKEY_DEC_ALT
355 //#define MBEDTLS_AES_ENCRYPT_ALT
356 //#define MBEDTLS_AES_DECRYPT_ALT
357 //#define MBEDTLS_ECDH_GEN_PUBLIC_ALT
358 //#define MBEDTLS_ECDH_COMPUTE_SHARED_ALT
359 //#define MBEDTLS_ECDSA_VERIFY_ALT
360 //#define MBEDTLS_ECDSA_SIGN_ALT
361 //#define MBEDTLS_ECDSA_GENKEY_ALT
362 
403 /* Required for all the functions in this section */
404 //#define MBEDTLS_ECP_INTERNAL_ALT
405 /* Support for Weierstrass curves with Jacobi representation */
406 //#define MBEDTLS_ECP_RANDOMIZE_JAC_ALT
407 //#define MBEDTLS_ECP_ADD_MIXED_ALT
408 //#define MBEDTLS_ECP_DOUBLE_JAC_ALT
409 //#define MBEDTLS_ECP_NORMALIZE_JAC_MANY_ALT
410 //#define MBEDTLS_ECP_NORMALIZE_JAC_ALT
411 /* Support for curves with Montgomery arithmetic */
412 //#define MBEDTLS_ECP_DOUBLE_ADD_MXZ_ALT
413 //#define MBEDTLS_ECP_RANDOMIZE_MXZ_ALT
414 //#define MBEDTLS_ECP_NORMALIZE_MXZ_ALT
415 
431 //#define MBEDTLS_TEST_NULL_ENTROPY
432 
444 //#define MBEDTLS_ENTROPY_HARDWARE_ALT
445 
464 #define MBEDTLS_AES_ROM_TABLES
465 
486 #define MBEDTLS_AES_FEWER_TABLES
487 
495 #define MBEDTLS_CAMELLIA_SMALL_MEMORY
496 
502 #define MBEDTLS_CIPHER_MODE_CBC
503 
509 #define MBEDTLS_CIPHER_MODE_CFB
510 
516 #define MBEDTLS_CIPHER_MODE_CTR
517 
523 #define MBEDTLS_CIPHER_MODE_OFB
524 
530 #define MBEDTLS_CIPHER_MODE_XTS
531 
563 #define MBEDTLS_CIPHER_NULL_CIPHER
564 
576 #define MBEDTLS_CIPHER_PADDING_PKCS7
577 #define MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
578 #define MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN
579 #define MBEDTLS_CIPHER_PADDING_ZEROS
580 
597 #define MBEDTLS_ENABLE_WEAK_CIPHERSUITES
598 
610 //#define MBEDTLS_REMOVE_ARC4_CIPHERSUITES
611 
620 #define MBEDTLS_ECP_DP_SECP192R1_ENABLED
621 #define MBEDTLS_ECP_DP_SECP224R1_ENABLED
622 #define MBEDTLS_ECP_DP_SECP256R1_ENABLED
623 #define MBEDTLS_ECP_DP_SECP384R1_ENABLED
624 #define MBEDTLS_ECP_DP_SECP521R1_ENABLED
625 #define MBEDTLS_ECP_DP_SECP192K1_ENABLED
626 #define MBEDTLS_ECP_DP_SECP224K1_ENABLED
627 #define MBEDTLS_ECP_DP_SECP256K1_ENABLED
628 #define MBEDTLS_ECP_DP_BP256R1_ENABLED
629 #define MBEDTLS_ECP_DP_BP384R1_ENABLED
630 #define MBEDTLS_ECP_DP_BP512R1_ENABLED
631 #define MBEDTLS_ECP_DP_CURVE25519_ENABLED
632 #define MBEDTLS_ECP_DP_CURVE448_ENABLED
633 
643 #define MBEDTLS_ECP_NIST_OPTIM
644 
657 #define MBEDTLS_ECDSA_DETERMINISTIC
658 
679 #define MBEDTLS_KEY_EXCHANGE_PSK_ENABLED
680 
710 #define MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED
711 
730 #define MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
731 
755 #define MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED
756 
783 #define MBEDTLS_KEY_EXCHANGE_RSA_ENABLED
784 
816 #define MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED
817 
841 #define MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED
842 
865 #define MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED
866 
889 #define MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA_ENABLED
890 
913 #define MBEDTLS_KEY_EXCHANGE_ECDH_RSA_ENABLED
914 
932 #define MBEDTLS_KEY_EXCHANGE_ECJPAKE_ENABLED
933 
946 #define MBEDTLS_PK_PARSE_EC_EXTENDED
947 
961 #define MBEDTLS_ERROR_STRERROR_DUMMY
962 
970 #define MBEDTLS_GENPRIME
971 
977 #define MBEDTLS_FS_IO
978 
990 //#define MBEDTLS_NO_DEFAULT_ENTROPY_SOURCES
991 
1001 //#define MBEDTLS_NO_PLATFORM_ENTROPY
1002 
1017 #define MBEDTLS_ENTROPY_FORCE_SHA256
1018 
1045 #define MBEDTLS_ENTROPY_NV_SEED
1046 
1058 #define MBEDTLS_MEMORY_DEBUG
1059 
1070 #define MBEDTLS_MEMORY_BACKTRACE
1071 
1079 #define MBEDTLS_PK_RSA_ALT_SUPPORT
1080 
1090 #define MBEDTLS_PKCS1_V15
1091 
1101 #define MBEDTLS_PKCS1_V21
1102 
1112 //#define MBEDTLS_RSA_NO_CRT
1113 
1119 #define MBEDTLS_SELF_TEST
1120 
1135 #define MBEDTLS_SHA256_SMALLER
1136 
1149 #define MBEDTLS_SSL_ALL_ALERT_MESSAGES
1150 
1160 #define MBEDTLS_SSL_ASYNC_PRIVATE
1161 
1176 #define MBEDTLS_SSL_DEBUG_ALL
1177 
1194 #define MBEDTLS_SSL_ENCRYPT_THEN_MAC
1195 
1212 #define MBEDTLS_SSL_EXTENDED_MASTER_SECRET
1213 
1229 #define MBEDTLS_SSL_FALLBACK_SCSV
1230 
1239 //#define MBEDTLS_SSL_HW_RECORD_ACCEL
1240 
1251 #define MBEDTLS_SSL_CBC_RECORD_SPLITTING
1252 
1273 #define MBEDTLS_SSL_RENEGOTIATION
1274 
1283 #define MBEDTLS_SSL_SRV_SUPPORT_SSLV2_CLIENT_HELLO
1284 
1293 #define MBEDTLS_SSL_SRV_RESPECT_CLIENT_PREFERENCE
1294 
1302 #define MBEDTLS_SSL_MAX_FRAGMENT_LENGTH
1303 
1314 #define MBEDTLS_SSL_PROTO_SSL3
1315 
1326 #define MBEDTLS_SSL_PROTO_TLS1
1327 
1338 #define MBEDTLS_SSL_PROTO_TLS1_1
1339 
1350 #define MBEDTLS_SSL_PROTO_TLS1_2
1351 
1365 #define MBEDTLS_SSL_PROTO_DTLS
1366 
1374 #define MBEDTLS_SSL_ALPN
1375 
1389 #define MBEDTLS_SSL_DTLS_ANTI_REPLAY
1390 
1407 #define MBEDTLS_SSL_DTLS_HELLO_VERIFY
1408 
1423 #define MBEDTLS_SSL_DTLS_CLIENT_PORT_REUSE
1424 
1434 #define MBEDTLS_SSL_DTLS_BADMAC_LIMIT
1435 
1448 #define MBEDTLS_SSL_SESSION_TICKETS
1449 
1458 #define MBEDTLS_SSL_EXPORT_KEYS
1459 
1469 #define MBEDTLS_SSL_SERVER_NAME_INDICATION
1470 
1478 #define MBEDTLS_SSL_TRUNCATED_HMAC
1479 
1502 #define MBEDTLS_SSL_TRUNCATED_HMAC_COMPAT
1503 
1513 //#define MBEDTLS_THREADING_ALT
1514 
1524 #define MBEDTLS_THREADING_PTHREAD
1525 
1537 #define MBEDTLS_VERSION_FEATURES
1538 
1547 //#define MBEDTLS_X509_ALLOW_EXTENSIONS_NON_V3
1548 
1559 //#define MBEDTLS_X509_ALLOW_UNSUPPORTED_CRITICAL_EXTENSION
1560 
1573 #define MBEDTLS_X509_CHECK_KEY_USAGE
1574 
1586 #define MBEDTLS_X509_CHECK_EXTENDED_KEY_USAGE
1587 
1596 #define MBEDTLS_X509_RSASSA_PSS_SUPPORT
1597 
1621 //#define MBEDTLS_ZLIB_SUPPORT
1622 /* \} name SECTION: mbed TLS feature support */
1623 
1643 #define MBEDTLS_AESNI_C
1644 
1718 #define MBEDTLS_AES_C
1719 
1746 #define MBEDTLS_ARC4_C
1747 
1760 #define MBEDTLS_ASN1_PARSE_C
1761 
1774 #define MBEDTLS_ASN1_WRITE_C
1775 
1786 #define MBEDTLS_BASE64_C
1787 
1803 #define MBEDTLS_BIGNUM_C
1804 
1812 #define MBEDTLS_BLOWFISH_C
1813 
1867 #define MBEDTLS_CAMELLIA_C
1868 
1919 #define MBEDTLS_ARIA_C
1920 
1933 #define MBEDTLS_CCM_C
1934 
1945 #define MBEDTLS_CERTS_C
1946 
1957 #define MBEDTLS_CIPHER_C
1958 
1970 #define MBEDTLS_CMAC_C
1971 
1984 #define MBEDTLS_CTR_DRBG_C
1985 
1998 #define MBEDTLS_DEBUG_C
1999 
2027 #define MBEDTLS_DES_C
2028 
2048 #define MBEDTLS_DHM_C
2049 
2064 #define MBEDTLS_ECDH_C
2065 
2079 #define MBEDTLS_ECDSA_C
2080 
2098 #define MBEDTLS_ECJPAKE_C
2099 
2112 #define MBEDTLS_ECP_C
2113 
2126 #define MBEDTLS_ENTROPY_C
2127 
2138 #define MBEDTLS_ERROR_C
2139 
2152 #define MBEDTLS_GCM_C
2153 
2175 #define MBEDTLS_HAVEGE_C
2176 
2190 #define MBEDTLS_HKDF_C
2191 
2204 #define MBEDTLS_HMAC_DRBG_C
2205 
2216 #define MBEDTLS_MD_C
2217 
2233 #define MBEDTLS_MD2_C
2234 
2250 #define MBEDTLS_MD4_C
2251 
2272 #define MBEDTLS_MD5_C
2273 
2288 #define MBEDTLS_MEMORY_BUFFER_ALLOC_C
2289 
2307 #define MBEDTLS_NET_C
2308 
2330 #define MBEDTLS_OID_C
2331 
2344 #define MBEDTLS_PADLOCK_C
2345 
2362 #define MBEDTLS_PEM_PARSE_C
2363 
2378 #define MBEDTLS_PEM_WRITE_C
2379 
2394 #define MBEDTLS_PK_C
2395 
2409 #define MBEDTLS_PK_PARSE_C
2410 
2423 #define MBEDTLS_PK_WRITE_C
2424 
2436 #define MBEDTLS_PKCS5_C
2437 
2451 //#define MBEDTLS_PKCS11_C
2452 
2467 #define MBEDTLS_PKCS12_C
2468 
2487 #define MBEDTLS_PLATFORM_C
2488 
2498 #define MBEDTLS_RIPEMD160_C
2499 
2517 #define MBEDTLS_RSA_C
2518 
2539 #define MBEDTLS_SHA1_C
2540 
2556 #define MBEDTLS_SHA256_C
2557 
2571 #define MBEDTLS_SHA512_C
2572 
2583 #define MBEDTLS_SSL_CACHE_C
2584 
2593 #define MBEDTLS_SSL_COOKIE_C
2594 
2605 #define MBEDTLS_SSL_TICKET_C
2606 
2619 #define MBEDTLS_SSL_CLI_C
2620 
2633 #define MBEDTLS_SSL_SRV_C
2634 
2649 #define MBEDTLS_SSL_TLS_C
2650 
2671 #define MBEDTLS_THREADING_C
2672 
2694 #define MBEDTLS_TIMING_C
2695 
2705 #define MBEDTLS_VERSION_C
2706 
2722 #define MBEDTLS_X509_USE_C
2723 
2738 #define MBEDTLS_X509_CRT_PARSE_C
2739 
2752 #define MBEDTLS_X509_CRL_PARSE_C
2753 
2766 #define MBEDTLS_X509_CSR_PARSE_C
2767 
2779 #define MBEDTLS_X509_CREATE_C
2780 
2792 #define MBEDTLS_X509_CRT_WRITE_C
2793 
2805 #define MBEDTLS_X509_CSR_WRITE_C
2806 
2815 #define MBEDTLS_XTEA_C
2816 
2817 /* \} name SECTION: mbed TLS modules */
2818 
2834 /* MPI / BIGNUM options */
2835 //#define MBEDTLS_MPI_WINDOW_SIZE 6 /**< Maximum windows size used. */
2836 //#define MBEDTLS_MPI_MAX_SIZE 1024 /**< Maximum number of bytes for usable MPIs. */
2837 
2838 /* CTR_DRBG options */
2839 //#define MBEDTLS_CTR_DRBG_ENTROPY_LEN 48 /**< Amount of entropy used per seed by default (48 with SHA-512, 32 with SHA-256) */
2840 //#define MBEDTLS_CTR_DRBG_RESEED_INTERVAL 10000 /**< Interval before reseed is performed by default */
2841 //#define MBEDTLS_CTR_DRBG_MAX_INPUT 256 /**< Maximum number of additional input bytes */
2842 //#define MBEDTLS_CTR_DRBG_MAX_REQUEST 1024 /**< Maximum number of requested bytes per call */
2843 //#define MBEDTLS_CTR_DRBG_MAX_SEED_INPUT 384 /**< Maximum size of (re)seed buffer */
2844 
2845 /* HMAC_DRBG options */
2846 //#define MBEDTLS_HMAC_DRBG_RESEED_INTERVAL 10000 /**< Interval before reseed is performed by default */
2847 //#define MBEDTLS_HMAC_DRBG_MAX_INPUT 256 /**< Maximum number of additional input bytes */
2848 //#define MBEDTLS_HMAC_DRBG_MAX_REQUEST 1024 /**< Maximum number of requested bytes per call */
2849 //#define MBEDTLS_HMAC_DRBG_MAX_SEED_INPUT 384 /**< Maximum size of (re)seed buffer */
2850 
2851 /* ECP options */
2852 //#define MBEDTLS_ECP_MAX_BITS 521 /**< Maximum bit size of groups */
2853 //#define MBEDTLS_ECP_WINDOW_SIZE 6 /**< Maximum window size used */
2854 //#define MBEDTLS_ECP_FIXED_POINT_OPTIM 1 /**< Enable fixed-point speed-up */
2855 
2856 /* Entropy options */
2857 //#define MBEDTLS_ENTROPY_MAX_SOURCES 20 /**< Maximum number of sources supported */
2858 //#define MBEDTLS_ENTROPY_MAX_GATHER 128 /**< Maximum amount requested from entropy sources */
2859 //#define MBEDTLS_ENTROPY_MIN_HARDWARE 32 /**< Default minimum number of bytes required for the hardware entropy source mbedtls_hardware_poll() before entropy is released */
2860 
2861 /* Memory buffer allocator options */
2862 //#define MBEDTLS_MEMORY_ALIGN_MULTIPLE 4 /**< Align on multiples of this value */
2863 
2864 /* Platform options */
2865 //#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. */
2866 //#define MBEDTLS_PLATFORM_STD_CALLOC calloc /**< Default allocator to use, can be undefined */
2867 //#define MBEDTLS_PLATFORM_STD_FREE free /**< Default free to use, can be undefined */
2868 //#define MBEDTLS_PLATFORM_STD_EXIT exit /**< Default exit to use, can be undefined */
2869 //#define MBEDTLS_PLATFORM_STD_TIME time /**< Default time to use, can be undefined. MBEDTLS_HAVE_TIME must be enabled */
2870 //#define MBEDTLS_PLATFORM_STD_FPRINTF fprintf /**< Default fprintf to use, can be undefined */
2871 //#define MBEDTLS_PLATFORM_STD_PRINTF printf /**< Default printf to use, can be undefined */
2872 /* Note: your snprintf must correclty zero-terminate the buffer! */
2873 //#define MBEDTLS_PLATFORM_STD_SNPRINTF snprintf /**< Default snprintf to use, can be undefined */
2874 //#define MBEDTLS_PLATFORM_STD_EXIT_SUCCESS 0 /**< Default exit value to use, can be undefined */
2875 //#define MBEDTLS_PLATFORM_STD_EXIT_FAILURE 1 /**< Default exit value to use, can be undefined */
2876 //#define MBEDTLS_PLATFORM_STD_NV_SEED_READ mbedtls_platform_std_nv_seed_read /**< Default nv_seed_read function to use, can be undefined */
2877 //#define MBEDTLS_PLATFORM_STD_NV_SEED_WRITE mbedtls_platform_std_nv_seed_write /**< Default nv_seed_write function to use, can be undefined */
2878 //#define MBEDTLS_PLATFORM_STD_NV_SEED_FILE "seedfile" /**< Seed file to read/write with default implementation */
2879 
2880 /* To Use Function Macros MBEDTLS_PLATFORM_C must be enabled */
2881 /* MBEDTLS_PLATFORM_XXX_MACRO and MBEDTLS_PLATFORM_XXX_ALT cannot both be defined */
2882 //#define MBEDTLS_PLATFORM_CALLOC_MACRO calloc /**< Default allocator macro to use, can be undefined */
2883 //#define MBEDTLS_PLATFORM_FREE_MACRO free /**< Default free macro to use, can be undefined */
2884 //#define MBEDTLS_PLATFORM_EXIT_MACRO exit /**< Default exit macro to use, can be undefined */
2885 //#define MBEDTLS_PLATFORM_TIME_MACRO time /**< Default time macro to use, can be undefined. MBEDTLS_HAVE_TIME must be enabled */
2886 //#define MBEDTLS_PLATFORM_TIME_TYPE_MACRO time_t /**< Default time macro to use, can be undefined. MBEDTLS_HAVE_TIME must be enabled */
2887 //#define MBEDTLS_PLATFORM_FPRINTF_MACRO fprintf /**< Default fprintf macro to use, can be undefined */
2888 //#define MBEDTLS_PLATFORM_PRINTF_MACRO printf /**< Default printf macro to use, can be undefined */
2889 /* Note: your snprintf must correclty zero-terminate the buffer! */
2890 //#define MBEDTLS_PLATFORM_SNPRINTF_MACRO snprintf /**< Default snprintf macro to use, can be undefined */
2891 //#define MBEDTLS_PLATFORM_NV_SEED_READ_MACRO mbedtls_platform_std_nv_seed_read /**< Default nv_seed_read function to use, can be undefined */
2892 //#define MBEDTLS_PLATFORM_NV_SEED_WRITE_MACRO mbedtls_platform_std_nv_seed_write /**< Default nv_seed_write function to use, can be undefined */
2893 
2894 /* SSL Cache options */
2895 //#define MBEDTLS_SSL_CACHE_DEFAULT_TIMEOUT 86400 /**< 1 day */
2896 //#define MBEDTLS_SSL_CACHE_DEFAULT_MAX_ENTRIES 50 /**< Maximum entries in cache */
2897 
2898 /* SSL options */
2899 //#define MBEDTLS_SSL_MAX_CONTENT_LEN 16384 /**< Maxium fragment length in bytes, determines the size of each of the two internal I/O buffers */
2900 //#define MBEDTLS_SSL_DEFAULT_TICKET_LIFETIME 86400 /**< Lifetime of session tickets (if enabled) */
2901 //#define MBEDTLS_PSK_MAX_LEN 32 /**< Max size of TLS pre-shared keys, in bytes (default 256 bits) */
2902 //#define MBEDTLS_SSL_COOKIE_TIMEOUT 60 /**< Default expiration delay of DTLS cookies, in seconds if HAVE_TIME, or in number of cookies issued */
2903 
2916 //#define MBEDTLS_SSL_CIPHERSUITES MBEDTLS_TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,MBEDTLS_TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
2917 
2918 /* X509 options */
2919 //#define MBEDTLS_X509_MAX_INTERMEDIATE_CA 8 /**< Maximum number of intermediate CAs in a verification chain. */
2920 //#define MBEDTLS_X509_MAX_FILE_PATH_LEN 512 /**< Maximum length of a path/filename string in bytes including the null terminator character ('\0'). */
2921 
2934 // #define MBEDTLS_TLS_DEFAULT_ALLOW_SHA1_IN_CERTIFICATES
2935 
2951 #define MBEDTLS_TLS_DEFAULT_ALLOW_SHA1_IN_KEY_EXCHANGE
2952 
2971 //#define MBEDTLS_PLATFORM_ZEROIZE_ALT
2972 
2973 /* \} name SECTION: Customisation configuration options */
2974 
2975 /* Target and application specific configurations */
2976 //#define YOTTA_CFG_MBEDTLS_TARGET_CONFIG_FILE "mbedtls/target_config.h"
2977 
2978 #if defined(TARGET_LIKE_MBED) && defined(YOTTA_CFG_MBEDTLS_TARGET_CONFIG_FILE)
2979 #include YOTTA_CFG_MBEDTLS_TARGET_CONFIG_FILE
2980 #endif
2981 
2982 /*
2983  * Allow user to override any previous default.
2984  *
2985  * Use two macro names for that, as:
2986  * - with yotta the prefix YOTTA_CFG_ is forced
2987  * - without yotta is looks weird to have a YOTTA prefix.
2988  */
2989 #if defined(YOTTA_CFG_MBEDTLS_USER_CONFIG_FILE)
2990 #include YOTTA_CFG_MBEDTLS_USER_CONFIG_FILE
2991 #elif defined(MBEDTLS_USER_CONFIG_FILE)
2992 #include MBEDTLS_USER_CONFIG_FILE
2993 #endif
2994 
2995 #include "check_config.h"
2996 
2997 #endif /* MBEDTLS_CONFIG_H */
Consistency checks for configuration options.