3 * Copyright (c) 2020 Project CHIP Authors
4 * Copyright (c) 2020 Texas Instruments Incorporated
6 * Licensed under the Apache License, Version 2.0 (the "License");
7 * you may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
10 * http://www.apache.org/licenses/LICENSE-2.0
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
21 * @file cc13x2_26x2-mbedtls-config.h.h
23 * @brief MbedTLS configuration header for CHIP
27 #ifndef CC13X2_26X2_MBEDTLS_CONFIG_H
28 #define CC13X2_26X2_MBEDTLS_CONFIG_H
34 * Enable FreeRTOS threading support
36 //#define MBEDTLS_FREERTOS
37 //#define MBEDTLS_THREADING_C
38 //#define MBEDTLS_THREADING_ALT
40 /* Enable Hardware Acceleration */
42 #define MBEDTLS_ECJPAKE_ALT
43 #define MBEDTLS_AES_ALT
44 #define MBEDTLS_SHA256_ALT
45 //#define MBEDTLS_ENTROPY_HARDWARE_ALT
48 * Enable Crypto and Entropy modules
50 //#define MBEDTLS_SHA1_C
51 //#define MBEDTLS_TRNG_C
52 //#define MBEDTLS_CIPHER_MODE_CTR
54 #define MBEDTLS_PLATFORM_SNPRINTF_MACRO snprintf
57 #define MBEDTLS_AES_ROM_TABLES
58 #define MBEDTLS_ASN1_PARSE_C
59 #define MBEDTLS_ASN1_WRITE_C
60 #define MBEDTLS_BIGNUM_C
62 #define MBEDTLS_CIPHER_C
63 #define MBEDTLS_CMAC_C
64 #define MBEDTLS_CTR_DRBG_C
65 #define MBEDTLS_ECJPAKE_C
67 #define MBEDTLS_ECP_DP_SECP256R1_ENABLED
68 #define MBEDTLS_ECP_NIST_OPTIM
69 #define MBEDTLS_ENTROPY_C
70 #define MBEDTLS_HAVE_ASM
71 #define MBEDTLS_HMAC_DRBG_C
72 #define MBEDTLS_KEY_EXCHANGE_ECJPAKE_ENABLED
74 #define MBEDTLS_NO_DEFAULT_ENTROPY_SOURCES
75 #define MBEDTLS_NO_PLATFORM_ENTROPY
77 #define MBEDTLS_PK_PARSE_C
78 #define MBEDTLS_PK_WRITE_C
79 #define MBEDTLS_PLATFORM_C
80 #define MBEDTLS_PLATFORM_MEMORY
81 #define MBEDTLS_PLATFORM_NO_STD_FUNCTIONS
82 #define MBEDTLS_SHA256_C
83 #define MBEDTLS_SHA256_SMALLER
84 #define MBEDTLS_SSL_CLI_C
85 #define MBEDTLS_SSL_DTLS_ANTI_REPLAY
86 #define MBEDTLS_SSL_DTLS_HELLO_VERIFY
87 #define MBEDTLS_SSL_EXPORT_KEYS
88 #define MBEDTLS_SSL_MAX_FRAGMENT_LENGTH
89 #define MBEDTLS_SSL_PROTO_TLS1_2
90 #define MBEDTLS_SSL_PROTO_DTLS
91 #define MBEDTLS_SSL_TLS_C
92 #define MBEDTLS_ERROR_STRERROR_DUMMY
93 #define MBEDTLS_HKDF_C
94 #define MBEDTLS_X509_CREATE_C
95 #define MBEDTLS_X509_CSR_WRITE_C
96 #define MBEDTLS_BASE64_C
97 #define MBEDTLS_PEM_WRITE_C
99 #define MBEDTLS_SSL_COOKIE_C
100 #define MBEDTLS_SSL_SRV_C
102 #define MBEDTLS_KEY_EXCHANGE_PSK_ENABLED
103 #define MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED
105 #define MBEDTLS_BASE64_C
106 #define MBEDTLS_ECDH_C
107 #define MBEDTLS_ECDSA_C
108 #define MBEDTLS_OID_C
109 #define MBEDTLS_PEM_PARSE_C
110 #define MBEDTLS_X509_USE_C
111 #define MBEDTLS_X509_CRT_PARSE_C
112 #define MBEDTLS_PKCS5_C
114 #define MBEDTLS_MPI_WINDOW_SIZE 1 /**< Maximum windows size used. */
115 #define MBEDTLS_MPI_MAX_SIZE 32 /**< Maximum number of bytes for usable MPIs. */
116 #define MBEDTLS_ECP_MAX_BITS 256 /**< Maximum bit size of groups */
117 #define MBEDTLS_ECP_WINDOW_SIZE 2 /**< Maximum window size used */
118 #define MBEDTLS_ECP_FIXED_POINT_OPTIM 0 /**< Enable fixed-point speed-up */
119 #define MBEDTLS_ENTROPY_MAX_SOURCES 1 /**< Maximum number of sources supported */
121 #define MBEDTLS_MEMORY_BUFFER_ALLOC_C
123 #define MBEDTLS_SSL_MAX_CONTENT_LEN 900 /**< Maxium fragment length in bytes */
125 #define MBEDTLS_SSL_CIPHERSUITES MBEDTLS_TLS_ECJPAKE_WITH_AES_128_CCM_8
127 #include "mbedtls/check_config.h"
129 #endif // CC13X2_26X2_MBEDTLS_CONFIG_H