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_PLATFORM_MEMORY 39 40 #define MBEDTLS_PLATFORM_NO_STD_FUNCTIONS 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_ECDH_RSA_ENABLED 90 91 #define MBEDTLS_PK_PARSE_EC_EXTENDED 92 93 #define MBEDTLS_ERROR_STRERROR_DUMMY 94 95 #define MBEDTLS_GENPRIME 96 97 #define MBEDTLS_PK_RSA_ALT_SUPPORT 98 99 #define MBEDTLS_PKCS1_V15 100 101 #define MBEDTLS_PKCS1_V21 102 103 #define MBEDTLS_SSL_ALL_ALERT_MESSAGES 104 105 #define MBEDTLS_SSL_RENEGOTIATION 106 107 #define MBEDTLS_SSL_MAX_FRAGMENT_LENGTH 108 109 #define MBEDTLS_SSL_ALPN 110 111 #define MBEDTLS_SSL_SESSION_TICKETS 112 113 #define MBEDTLS_SSL_EXPORT_KEYS 114 115 #define MBEDTLS_SSL_SERVER_NAME_INDICATION 116 117 #define MBEDTLS_VERSION_FEATURES 118 119 #define MBEDTLS_X509_RSASSA_PSS_SUPPORT 120 121 #define MBEDTLS_AESNI_C 122 123 #define MBEDTLS_AES_C 124 125 #define MBEDTLS_ASN1_PARSE_C 126 127 #define MBEDTLS_ASN1_WRITE_C 128 129 #define MBEDTLS_BASE64_C 130 131 #define MBEDTLS_BIGNUM_C 132 133 #define MBEDTLS_CAMELLIA_C 134 135 #define MBEDTLS_CCM_C 136 137 #define MBEDTLS_CHACHA20_C 138 139 #define MBEDTLS_CHACHAPOLY_C 140 141 #define MBEDTLS_CIPHER_C 142 143 #define MBEDTLS_CTR_DRBG_C 144 145 #define MBEDTLS_DEBUG_C 146 147 #define MBEDTLS_DES_C 148 149 #define MBEDTLS_DHM_C 150 151 #define MBEDTLS_ECDH_C 152 153 #define MBEDTLS_ECP_C 154 155 #define MBEDTLS_ENTROPY_C 156 157 #define MBEDTLS_ERROR_C 158 159 #define MBEDTLS_GCM_C 160 161 #define MBEDTLS_HKDF_C 162 163 #define MBEDTLS_HMAC_DRBG_C 164 165 #define MBEDTLS_MD_C 166 167 #define MBEDTLS_NET_C 168 169 #define MBEDTLS_OID_C 170 171 #define MBEDTLS_PADLOCK_C 172 173 #define MBEDTLS_PEM_PARSE_C 174 175 #define MBEDTLS_PEM_WRITE_C 176 177 #define MBEDTLS_PK_C 178 179 #define MBEDTLS_PK_PARSE_C 180 181 #define MBEDTLS_PK_WRITE_C 182 183 #define MBEDTLS_PKCS5_C 184 185 #define MBEDTLS_PKCS12_C 186 187 #define MBEDTLS_PLATFORM_C 188 189 #define MBEDTLS_POLY1305_C 190 191 #define MBEDTLS_RSA_C 192 193 #define MBEDTLS_SHA224_C 194 #define MBEDTLS_SHA256_C 195 #define MBEDTLS_SHA384_C 196 #define MBEDTLS_SHA512_C 197 198 #define MBEDTLS_TIMING_C 199 200 #define MBEDTLS_VERSION_C 201 202 #define MBEDTLS_X509_USE_C 203 204 #define MBEDTLS_X509_CRT_PARSE_C 205 206 #define MBEDTLS_X509_CRL_PARSE_C 207 208 #define MBEDTLS_X509_CSR_PARSE_C 209 210 #define MBEDTLS_X509_CREATE_C 211 212 #define MBEDTLS_X509_CRT_WRITE_C 213 214 #define MBEDTLS_X509_CSR_WRITE_C 215 216 /* To Use Function Macros MBEDTLS_PLATFORM_C must be enabled */ 217 /* MBEDTLS_PLATFORM_XXX_MACRO and MBEDTLS_PLATFORM_XXX_ALT cannot both be defined */ 218 void *mbedtls_adpt_calloc(unsigned int nmemb, unsigned int size); 219 void mbedtls_adpt_free(void *ptr); 220 #define MBEDTLS_PLATFORM_CALLOC_MACRO mbedtls_adpt_calloc /**< Default allocator macro to use, can be undefined */ 221 #define MBEDTLS_PLATFORM_FREE_MACRO mbedtls_adpt_free /**< Default free macro to use, can be undefined */ 222