1 /** 2 * \file mbedtls_config.h 3 * 4 * \brief Configuration options (set of defines) 5 * 6 * This set of compile-time options may be used to enable 7 * or disable features selectively, and reduce the global 8 * memory footprint. 9 */ 10 /* 11 * Copyright The Mbed TLS Contributors 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 27 /** 28 * This is an optional version symbol that enables comatibility handling of 29 * config files. 30 * 31 * It is equal to the #MBEDTLS_VERSION_NUMBER of the Mbed TLS version that 32 * introduced the config format we want to be compatible with. 33 */ 34 //#define MBEDTLS_CONFIG_VERSION 0x03000000 35 36 #define MBEDTLS_HAVE_ASM 37 38 #define MBEDTLS_HAVE_TIME 39 40 #define MBEDTLS_HAVE_TIME_DATE 41 42 #define MBEDTLS_CIPHER_MODE_CBC 43 44 #define MBEDTLS_CIPHER_MODE_CFB 45 46 #define MBEDTLS_CIPHER_MODE_CTR 47 48 #define MBEDTLS_CIPHER_MODE_OFB 49 50 #define MBEDTLS_CIPHER_MODE_XTS 51 52 #define MBEDTLS_CIPHER_PADDING_PKCS7 53 #define MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS 54 #define MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN 55 #define MBEDTLS_CIPHER_PADDING_ZEROS 56 57 #define MBEDTLS_ECP_DP_SECP192R1_ENABLED 58 #define MBEDTLS_ECP_DP_SECP224R1_ENABLED 59 #define MBEDTLS_ECP_DP_SECP256R1_ENABLED 60 #define MBEDTLS_ECP_DP_SECP384R1_ENABLED 61 #define MBEDTLS_ECP_DP_SECP521R1_ENABLED 62 #define MBEDTLS_ECP_DP_SECP192K1_ENABLED 63 #define MBEDTLS_ECP_DP_SECP224K1_ENABLED 64 #define MBEDTLS_ECP_DP_SECP256K1_ENABLED 65 #define MBEDTLS_ECP_DP_BP256R1_ENABLED 66 #define MBEDTLS_ECP_DP_BP384R1_ENABLED 67 #define MBEDTLS_ECP_DP_BP512R1_ENABLED 68 #define MBEDTLS_ECP_DP_CURVE25519_ENABLED 69 #define MBEDTLS_ECP_DP_CURVE448_ENABLED 70 71 #define MBEDTLS_ECP_NIST_OPTIM 72 73 #define MBEDTLS_ECDSA_DETERMINISTIC 74 75 #define MBEDTLS_KEY_EXCHANGE_PSK_ENABLED 76 77 #define MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED 78 79 #define MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED 80 81 #define MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED 82 83 #define MBEDTLS_KEY_EXCHANGE_RSA_ENABLED 84 85 #define MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED 86 87 #define MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED 88 89 #define MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED 90 91 #define MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA_ENABLED 92 93 #define MBEDTLS_KEY_EXCHANGE_ECDH_RSA_ENABLED 94 95 #define MBEDTLS_PK_PARSE_EC_EXTENDED 96 97 #define MBEDTLS_ERROR_STRERROR_DUMMY 98 99 #define MBEDTLS_GENPRIME 100 101 #define MBEDTLS_FS_IO 102 103 #define MBEDTLS_PK_RSA_ALT_SUPPORT 104 105 #define MBEDTLS_PKCS1_V15 106 107 #define MBEDTLS_PKCS1_V21 108 109 #define MBEDTLS_SELF_TEST 110 111 #define MBEDTLS_SSL_ALL_ALERT_MESSAGES 112 113 #define MBEDTLS_SSL_ENCRYPT_THEN_MAC 114 115 #define MBEDTLS_SSL_EXTENDED_MASTER_SECRET 116 117 #define MBEDTLS_SSL_CBC_RECORD_SPLITTING 118 119 #define MBEDTLS_SSL_RENEGOTIATION 120 121 #define MBEDTLS_SSL_MAX_FRAGMENT_LENGTH 122 123 #define MBEDTLS_SSL_PROTO_TLS1 124 125 #define MBEDTLS_SSL_PROTO_TLS1_1 126 127 #define MBEDTLS_SSL_PROTO_TLS1_2 128 129 #define MBEDTLS_SSL_PROTO_DTLS 130 131 #define MBEDTLS_SSL_ALPN 132 133 #define MBEDTLS_SSL_DTLS_ANTI_REPLAY 134 135 #define MBEDTLS_SSL_DTLS_HELLO_VERIFY 136 137 #define MBEDTLS_SSL_DTLS_CLIENT_PORT_REUSE 138 139 #define MBEDTLS_SSL_DTLS_BADMAC_LIMIT 140 141 #define MBEDTLS_SSL_SESSION_TICKETS 142 143 #define MBEDTLS_SSL_EXPORT_KEYS 144 145 #define MBEDTLS_SSL_SERVER_NAME_INDICATION 146 147 #define MBEDTLS_VERSION_FEATURES 148 149 #define MBEDTLS_X509_RSASSA_PSS_SUPPORT 150 151 #define MBEDTLS_AESNI_C 152 153 #define MBEDTLS_AES_C 154 155 #define MBEDTLS_ASN1_PARSE_C 156 157 #define MBEDTLS_ASN1_WRITE_C 158 159 #define MBEDTLS_BASE64_C 160 161 #define MBEDTLS_BIGNUM_C 162 163 #define MBEDTLS_CAMELLIA_C 164 165 #define MBEDTLS_CCM_C 166 167 #define MBEDTLS_CHACHA20_C 168 169 #define MBEDTLS_CHACHAPOLY_C 170 171 #define MBEDTLS_CIPHER_C 172 173 #define MBEDTLS_CTR_DRBG_C 174 175 #define MBEDTLS_DEBUG_C 176 177 #define MBEDTLS_DES_C 178 179 #define MBEDTLS_DHM_C 180 181 #define MBEDTLS_ECDH_C 182 183 #define MBEDTLS_ECDSA_C 184 185 #define MBEDTLS_ECP_C 186 187 #define MBEDTLS_ENTROPY_C 188 189 #define MBEDTLS_ERROR_C 190 191 #define MBEDTLS_GCM_C 192 193 #define MBEDTLS_HKDF_C 194 195 #define MBEDTLS_HMAC_DRBG_C 196 197 #define MBEDTLS_MD_C 198 199 #define MBEDTLS_MD5_C 200 201 #define MBEDTLS_NET_C 202 203 #define MBEDTLS_OID_C 204 205 #define MBEDTLS_PADLOCK_C 206 207 #define MBEDTLS_PEM_PARSE_C 208 209 #define MBEDTLS_PEM_WRITE_C 210 211 #define MBEDTLS_PK_C 212 213 #define MBEDTLS_PK_PARSE_C 214 215 #define MBEDTLS_PK_WRITE_C 216 217 #define MBEDTLS_PKCS5_C 218 219 #define MBEDTLS_PKCS12_C 220 221 #define MBEDTLS_PLATFORM_C 222 223 #define MBEDTLS_POLY1305_C 224 225 #define MBEDTLS_RIPEMD160_C 226 227 #define MBEDTLS_RSA_C 228 229 #define MBEDTLS_SHA1_C 230 #define MBEDTLS_SHA224_C 231 #define MBEDTLS_SHA256_C 232 #define MBEDTLS_SHA384_C 233 #define MBEDTLS_SHA512_C 234 235 #define MBEDTLS_SSL_CACHE_C 236 237 #define MBEDTLS_SSL_COOKIE_C 238 239 #define MBEDTLS_SSL_TICKET_C 240 241 #define MBEDTLS_SSL_CLI_C 242 243 #define MBEDTLS_SSL_SRV_C 244 245 #define MBEDTLS_SSL_TLS_C 246 247 #define MBEDTLS_TIMING_C 248 249 #define MBEDTLS_VERSION_C 250 251 #define MBEDTLS_X509_USE_C 252 253 #define MBEDTLS_X509_CRT_PARSE_C 254 255 #define MBEDTLS_X509_CRL_PARSE_C 256 257 #define MBEDTLS_X509_CSR_PARSE_C 258 259 #define MBEDTLS_X509_CREATE_C 260 261 #define MBEDTLS_X509_CRT_WRITE_C 262 263 #define MBEDTLS_X509_CSR_WRITE_C 264