Toyomasa Watarai / simple-mbed-cloud-client

Dependents:  

Committer:
MACRUM
Date:
Mon Jul 02 06:30:39 2018 +0000
Revision:
0:276e7a263c35
Initial commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
MACRUM 0:276e7a263c35 1 //----------------------------------------------------------------------------
MACRUM 0:276e7a263c35 2 // The confidential and proprietary information contained in this file may
MACRUM 0:276e7a263c35 3 // only be used by a person authorised under and to the extent permitted
MACRUM 0:276e7a263c35 4 // by a subsisting licensing agreement from ARM Limited or its affiliates.
MACRUM 0:276e7a263c35 5 //
MACRUM 0:276e7a263c35 6 // (C) COPYRIGHT 2016 ARM Limited or its affiliates.
MACRUM 0:276e7a263c35 7 // ALL RIGHTS RESERVED
MACRUM 0:276e7a263c35 8 //
MACRUM 0:276e7a263c35 9 // This entire notice must be reproduced on all copies of this file
MACRUM 0:276e7a263c35 10 // and copies of this file may only be made by a person if such person is
MACRUM 0:276e7a263c35 11 // permitted to do so under the terms of a subsisting license agreement
MACRUM 0:276e7a263c35 12 // from ARM Limited or its affiliates.
MACRUM 0:276e7a263c35 13 //----------------------------------------------------------------------------
MACRUM 0:276e7a263c35 14
MACRUM 0:276e7a263c35 15 #ifndef PAL_MBEDTLS_USER_CONFIG_H
MACRUM 0:276e7a263c35 16 #define PAL_MBEDTLS_USER_CONFIG_H
MACRUM 0:276e7a263c35 17
MACRUM 0:276e7a263c35 18
MACRUM 0:276e7a263c35 19 /*! All of the following definitions are mandatory requirements for correct
MACRUM 0:276e7a263c35 20 * fucntionality of PAL TLS and Crypto components.
MACRUM 0:276e7a263c35 21 * Please do not disable them.
MACRUM 0:276e7a263c35 22 */
MACRUM 0:276e7a263c35 23
MACRUM 0:276e7a263c35 24 /* Platform has time function to provide time for certificates verifications */
MACRUM 0:276e7a263c35 25 #if 1 //Please set to 1 if you are using secure time
MACRUM 0:276e7a263c35 26 #ifndef MBEDTLS_HAVE_TIME
MACRUM 0:276e7a263c35 27 #define MBEDTLS_HAVE_TIME
MACRUM 0:276e7a263c35 28 #endif //MBEDTLS_HAVE_TIME
MACRUM 0:276e7a263c35 29
MACRUM 0:276e7a263c35 30 #ifndef MBEDTLS_HAVE_TIME_DATE
MACRUM 0:276e7a263c35 31 #define MBEDTLS_HAVE_TIME_DATE
MACRUM 0:276e7a263c35 32 #endif //MBEDTLS_HAVE_TIME_DATE
MACRUM 0:276e7a263c35 33
MACRUM 0:276e7a263c35 34 #ifndef MBEDTLS_PLATFORM_TIME_ALT
MACRUM 0:276e7a263c35 35 #define MBEDTLS_PLATFORM_TIME_ALT
MACRUM 0:276e7a263c35 36 #endif //MBEDTLS_PLATFORM_TIME_ALT
MACRUM 0:276e7a263c35 37
MACRUM 0:276e7a263c35 38 /* System support */
MACRUM 0:276e7a263c35 39 #ifndef MBEDTLS_HAVE_ASM
MACRUM 0:276e7a263c35 40 #define MBEDTLS_HAVE_ASM
MACRUM 0:276e7a263c35 41 #endif //MBEDTLS_HAVE_ASM
MACRUM 0:276e7a263c35 42 #endif
MACRUM 0:276e7a263c35 43 /* mbed TLS feature support */
MACRUM 0:276e7a263c35 44 #ifndef MBEDTLS_ECP_DP_SECP256R1_ENABLED
MACRUM 0:276e7a263c35 45 #define MBEDTLS_ECP_DP_SECP256R1_ENABLED
MACRUM 0:276e7a263c35 46 #endif //MBEDTLS_ECP_DP_SECP256R1_ENABLED
MACRUM 0:276e7a263c35 47
MACRUM 0:276e7a263c35 48 #ifndef MBEDTLS_ECP_NIST_OPTIM
MACRUM 0:276e7a263c35 49 #define MBEDTLS_ECP_NIST_OPTIM
MACRUM 0:276e7a263c35 50 #endif //MBEDTLS_ECP_NIST_OPTIM
MACRUM 0:276e7a263c35 51
MACRUM 0:276e7a263c35 52 #ifndef MBEDTLS_SSL_MAX_FRAGMENT_LENGTH
MACRUM 0:276e7a263c35 53 #define MBEDTLS_SSL_MAX_FRAGMENT_LENGTH
MACRUM 0:276e7a263c35 54 #endif //MBEDTLS_SSL_MAX_FRAGMENT_LENGTH
MACRUM 0:276e7a263c35 55
MACRUM 0:276e7a263c35 56 #ifndef MBEDTLS_SSL_PROTO_TLS1_2
MACRUM 0:276e7a263c35 57 #define MBEDTLS_SSL_PROTO_TLS1_2
MACRUM 0:276e7a263c35 58 #endif //MBEDTLS_SSL_PROTO_TLS1_2
MACRUM 0:276e7a263c35 59
MACRUM 0:276e7a263c35 60 #ifndef MBEDTLS_SSL_PROTO_DTLS
MACRUM 0:276e7a263c35 61 #define MBEDTLS_SSL_PROTO_DTLS
MACRUM 0:276e7a263c35 62 #endif //MBEDTLS_SSL_PROTO_DTLS
MACRUM 0:276e7a263c35 63
MACRUM 0:276e7a263c35 64 #ifndef MBEDTLS_SSL_DTLS_ANTI_REPLAY
MACRUM 0:276e7a263c35 65 #define MBEDTLS_SSL_DTLS_ANTI_REPLAY
MACRUM 0:276e7a263c35 66 #endif //MBEDTLS_SSL_DTLS_ANTI_REPLAY
MACRUM 0:276e7a263c35 67
MACRUM 0:276e7a263c35 68 #ifndef MBEDTLS_SSL_DTLS_HELLO_VERIFY
MACRUM 0:276e7a263c35 69 #define MBEDTLS_SSL_DTLS_HELLO_VERIFY
MACRUM 0:276e7a263c35 70 #endif //MBEDTLS_SSL_DTLS_HELLO_VERIFY
MACRUM 0:276e7a263c35 71
MACRUM 0:276e7a263c35 72 #ifndef MBEDTLS_SSL_EXPORT_KEYS
MACRUM 0:276e7a263c35 73 #define MBEDTLS_SSL_EXPORT_KEYS
MACRUM 0:276e7a263c35 74 #endif //MBEDTLS_SSL_EXPORT_KEYS
MACRUM 0:276e7a263c35 75
MACRUM 0:276e7a263c35 76 /* mbed TLS modules */
MACRUM 0:276e7a263c35 77 #ifndef MBEDTLS_AES_C
MACRUM 0:276e7a263c35 78 #define MBEDTLS_AES_C
MACRUM 0:276e7a263c35 79 #endif //MBEDTLS_AES_C
MACRUM 0:276e7a263c35 80
MACRUM 0:276e7a263c35 81 #ifndef MBEDTLS_ASN1_PARSE_C
MACRUM 0:276e7a263c35 82 #define MBEDTLS_ASN1_PARSE_C
MACRUM 0:276e7a263c35 83 #endif //MBEDTLS_ASN1_PARSE_C
MACRUM 0:276e7a263c35 84
MACRUM 0:276e7a263c35 85 #ifndef MBEDTLS_ASN1_WRITE_C
MACRUM 0:276e7a263c35 86 #define MBEDTLS_ASN1_WRITE_C
MACRUM 0:276e7a263c35 87 #endif //MBEDTLS_ASN1_WRITE_C
MACRUM 0:276e7a263c35 88
MACRUM 0:276e7a263c35 89 #ifndef MBEDTLS_BIGNUM_C
MACRUM 0:276e7a263c35 90 #define MBEDTLS_BIGNUM_C
MACRUM 0:276e7a263c35 91 #endif //MBEDTLS_BIGNUM_C
MACRUM 0:276e7a263c35 92
MACRUM 0:276e7a263c35 93 #ifndef MBEDTLS_CIPHER_C
MACRUM 0:276e7a263c35 94 #define MBEDTLS_CIPHER_C
MACRUM 0:276e7a263c35 95 #endif //MBEDTLS_CIPHER_C
MACRUM 0:276e7a263c35 96
MACRUM 0:276e7a263c35 97 #ifndef MBEDTLS_CTR_DRBG_C
MACRUM 0:276e7a263c35 98 #define MBEDTLS_CTR_DRBG_C
MACRUM 0:276e7a263c35 99 #endif //MBEDTLS_CTR_DRBG_C
MACRUM 0:276e7a263c35 100
MACRUM 0:276e7a263c35 101 #ifndef MBEDTLS_ECP_C
MACRUM 0:276e7a263c35 102 #define MBEDTLS_ECP_C
MACRUM 0:276e7a263c35 103 #endif //MBEDTLS_ECP_C
MACRUM 0:276e7a263c35 104
MACRUM 0:276e7a263c35 105 #ifndef MBEDTLS_ENTROPY_C
MACRUM 0:276e7a263c35 106 #define MBEDTLS_ENTROPY_C
MACRUM 0:276e7a263c35 107 #endif //MBEDTLS_ENTROPY_C
MACRUM 0:276e7a263c35 108
MACRUM 0:276e7a263c35 109 #ifndef MBEDTLS_MD_C
MACRUM 0:276e7a263c35 110 #define MBEDTLS_MD_C
MACRUM 0:276e7a263c35 111 #endif //MBEDTLS_MD_C
MACRUM 0:276e7a263c35 112
MACRUM 0:276e7a263c35 113 #ifndef MBEDTLS_OID_C
MACRUM 0:276e7a263c35 114 #define MBEDTLS_OID_C
MACRUM 0:276e7a263c35 115 #endif //MBEDTLS_OID_C
MACRUM 0:276e7a263c35 116
MACRUM 0:276e7a263c35 117 #ifndef MBEDTLS_PK_C
MACRUM 0:276e7a263c35 118 #define MBEDTLS_PK_C
MACRUM 0:276e7a263c35 119 #endif //MBEDTLS_PK_C
MACRUM 0:276e7a263c35 120
MACRUM 0:276e7a263c35 121 #ifndef MBEDTLS_PK_PARSE_C
MACRUM 0:276e7a263c35 122 #define MBEDTLS_PK_PARSE_C
MACRUM 0:276e7a263c35 123 #endif //MBEDTLS_PK_PARSE_C
MACRUM 0:276e7a263c35 124
MACRUM 0:276e7a263c35 125 #ifndef MBEDTLS_SHA256_C
MACRUM 0:276e7a263c35 126 #define MBEDTLS_SHA256_C
MACRUM 0:276e7a263c35 127 #endif //MBEDTLS_SHA256_C
MACRUM 0:276e7a263c35 128
MACRUM 0:276e7a263c35 129 #ifndef MBEDTLS_SSL_COOKIE_C
MACRUM 0:276e7a263c35 130 #define MBEDTLS_SSL_COOKIE_C
MACRUM 0:276e7a263c35 131 #endif //MBEDTLS_SSL_COOKIE_C
MACRUM 0:276e7a263c35 132
MACRUM 0:276e7a263c35 133 #ifndef MBEDTLS_SSL_CLI_C
MACRUM 0:276e7a263c35 134 #define MBEDTLS_SSL_CLI_C
MACRUM 0:276e7a263c35 135 #endif //MBEDTLS_SSL_CLI_C
MACRUM 0:276e7a263c35 136
MACRUM 0:276e7a263c35 137 #ifndef MBEDTLS_SSL_TLS_C
MACRUM 0:276e7a263c35 138 #define MBEDTLS_SSL_TLS_C
MACRUM 0:276e7a263c35 139 #endif //MBEDTLS_SSL_TLS_C
MACRUM 0:276e7a263c35 140 // XXX mbedclient needs these: mbedtls_x509_crt_free, mbedtls_x509_crt_init, mbedtls_x509_crt_parse
MACRUM 0:276e7a263c35 141 #ifndef MBEDTLS_X509_USE_C
MACRUM 0:276e7a263c35 142 #define MBEDTLS_X509_USE_C
MACRUM 0:276e7a263c35 143 #endif //MBEDTLS_X509_USE_C
MACRUM 0:276e7a263c35 144
MACRUM 0:276e7a263c35 145 #ifndef MBEDTLS_X509_CRT_PARSE_C
MACRUM 0:276e7a263c35 146 #define MBEDTLS_X509_CRT_PARSE_C
MACRUM 0:276e7a263c35 147 #endif //MBEDTLS_X509_CRT_PARSE_C
MACRUM 0:276e7a263c35 148 // a bit wrong way to get mbedtls_ssl_conf_psk:
MACRUM 0:276e7a263c35 149 #ifndef MBEDTLS_CMAC_C
MACRUM 0:276e7a263c35 150 #define MBEDTLS_CMAC_C
MACRUM 0:276e7a263c35 151 #endif //MBEDTLS_CMAC_C
MACRUM 0:276e7a263c35 152
MACRUM 0:276e7a263c35 153 #ifndef MBEDTLS_ECDH_C
MACRUM 0:276e7a263c35 154 #define MBEDTLS_ECDH_C
MACRUM 0:276e7a263c35 155 #endif //MBEDTLS_ECDH_C
MACRUM 0:276e7a263c35 156
MACRUM 0:276e7a263c35 157 #ifndef MBEDTLS_ECDSA_C
MACRUM 0:276e7a263c35 158 #define MBEDTLS_ECDSA_C
MACRUM 0:276e7a263c35 159 #endif //MBEDTLS_ECDSA_C
MACRUM 0:276e7a263c35 160
MACRUM 0:276e7a263c35 161 #ifndef MBEDTLS_GCM_C
MACRUM 0:276e7a263c35 162 #define MBEDTLS_GCM_C
MACRUM 0:276e7a263c35 163 #endif //MBEDTLS_GCM_C
MACRUM 0:276e7a263c35 164
MACRUM 0:276e7a263c35 165 #ifndef MBEDTLS_X509_CRT_PARSE_C
MACRUM 0:276e7a263c35 166 #define MBEDTLS_X509_CRT_PARSE_C
MACRUM 0:276e7a263c35 167 #endif //MBEDTLS_X509_CRT_PARSE_C
MACRUM 0:276e7a263c35 168
MACRUM 0:276e7a263c35 169 #ifndef MBEDTLS_X509_CSR_PARSE_C
MACRUM 0:276e7a263c35 170 #define MBEDTLS_X509_CSR_PARSE_C
MACRUM 0:276e7a263c35 171 #endif //MBEDTLS_X509_CSR_PARSE_C
MACRUM 0:276e7a263c35 172
MACRUM 0:276e7a263c35 173 #ifndef MBEDTLS_X509_CREATE_C
MACRUM 0:276e7a263c35 174 #define MBEDTLS_X509_CREATE_C
MACRUM 0:276e7a263c35 175 #endif //MBEDTLS_X509_CREATE_C
MACRUM 0:276e7a263c35 176
MACRUM 0:276e7a263c35 177 #ifndef MBEDTLS_X509_CSR_WRITE_C
MACRUM 0:276e7a263c35 178 #define MBEDTLS_X509_CSR_WRITE_C
MACRUM 0:276e7a263c35 179 #endif //MBEDTLS_X509_CSR_WRITE_C
MACRUM 0:276e7a263c35 180
MACRUM 0:276e7a263c35 181 #ifndef MBEDTLS_CTR_DRBG_MAX_REQUEST
MACRUM 0:276e7a263c35 182 #define MBEDTLS_CTR_DRBG_MAX_REQUEST 2048
MACRUM 0:276e7a263c35 183 #endif //MBEDTLS_CTR_DRBG_MAX_REQUEST
MACRUM 0:276e7a263c35 184
MACRUM 0:276e7a263c35 185 // Needed by update
MACRUM 0:276e7a263c35 186 #ifndef MBEDTLS_CIPHER_MODE_CTR
MACRUM 0:276e7a263c35 187 #define MBEDTLS_CIPHER_MODE_CTR
MACRUM 0:276e7a263c35 188 #endif //MBEDTLS_CIPHER_MODE_CTR
MACRUM 0:276e7a263c35 189
MACRUM 0:276e7a263c35 190 // Save ROM and a few bytes of RAM by specifying our own ciphersuite list
MACRUM 0:276e7a263c35 191 #ifndef MBEDTLS_SSL_CIPHERSUITES
MACRUM 0:276e7a263c35 192 #define MBEDTLS_SSL_CIPHERSUITES MBEDTLS_TLS_ECDHE_ECDSA_WITH_AES_128_CCM_8, \
MACRUM 0:276e7a263c35 193 MBEDTLS_TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, \
MACRUM 0:276e7a263c35 194 MBEDTLS_TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384, \
MACRUM 0:276e7a263c35 195 MBEDTLS_TLS_PSK_WITH_AES_128_CCM_8, \
MACRUM 0:276e7a263c35 196 MBEDTLS_TLS_PSK_WITH_AES_256_CCM_8, \
MACRUM 0:276e7a263c35 197 MBEDTLS_TLS_PSK_WITH_AES_128_CBC_SHA256
MACRUM 0:276e7a263c35 198 #endif //MBEDTLS_SSL_CIPHERSUITES
MACRUM 0:276e7a263c35 199
MACRUM 0:276e7a263c35 200 /*! All of the following definitions are optimizations (reduce mbedTLS memory usage and size),
MACRUM 0:276e7a263c35 201 * changing them is on the user responsibility since they can enlarge
MACRUM 0:276e7a263c35 202 * the binary footprint and the memory usage
MACRUM 0:276e7a263c35 203 */
MACRUM 0:276e7a263c35 204
MACRUM 0:276e7a263c35 205 // define to save 8KB RAM at the expense of ROM
MACRUM 0:276e7a263c35 206 #ifndef MBEDTLS_AES_ROM_TABLES
MACRUM 0:276e7a263c35 207 #define MBEDTLS_AES_ROM_TABLES
MACRUM 0:276e7a263c35 208 #endif //MBEDTLS_AES_ROM_TABLES
MACRUM 0:276e7a263c35 209
MACRUM 0:276e7a263c35 210 // Reduce IO buffer to save RAM, default is 16KB
MACRUM 0:276e7a263c35 211 #ifndef MBEDTLS_SSL_MAX_CONTENT_LEN
MACRUM 0:276e7a263c35 212 #define MBEDTLS_SSL_MAX_CONTENT_LEN 4096
MACRUM 0:276e7a263c35 213 #endif //MBEDTLS_SSL_MAX_CONTENT_LEN
MACRUM 0:276e7a263c35 214
MACRUM 0:276e7a263c35 215 // Needed by provisioning
MACRUM 0:276e7a263c35 216 #undef MBEDTLS_PEM_WRITE_C
MACRUM 0:276e7a263c35 217
MACRUM 0:276e7a263c35 218 // Remove RSA, save 20KB at total
MACRUM 0:276e7a263c35 219 #undef MBEDTLS_RSA_C
MACRUM 0:276e7a263c35 220
MACRUM 0:276e7a263c35 221 #undef MBEDTLS_PK_RSA_ALT_SUPPORT
MACRUM 0:276e7a263c35 222
MACRUM 0:276e7a263c35 223 #undef MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED
MACRUM 0:276e7a263c35 224
MACRUM 0:276e7a263c35 225 #undef MBEDTLS_KEY_EXCHANGE_RSA_ENABLED
MACRUM 0:276e7a263c35 226
MACRUM 0:276e7a263c35 227 #undef MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED
MACRUM 0:276e7a263c35 228
MACRUM 0:276e7a263c35 229 //#define MBEDTLS_KEY_EXCHANGE_PSK_ENABLED
MACRUM 0:276e7a263c35 230
MACRUM 0:276e7a263c35 231 // Remove error messages, save 10KB of ROM
MACRUM 0:276e7a263c35 232 #undef MBEDTLS_ERROR_C
MACRUM 0:276e7a263c35 233
MACRUM 0:276e7a263c35 234 // Remove selftesting and save 11KB of ROM
MACRUM 0:276e7a263c35 235 #undef MBEDTLS_SELF_TEST
MACRUM 0:276e7a263c35 236
MACRUM 0:276e7a263c35 237 #undef MBEDTLS_CERTS_C
MACRUM 0:276e7a263c35 238
MACRUM 0:276e7a263c35 239 // Reduces ROM size by 30 kB
MACRUM 0:276e7a263c35 240 #undef MBEDTLS_ERROR_STRERROR_DUMMY
MACRUM 0:276e7a263c35 241
MACRUM 0:276e7a263c35 242 #undef MBEDTLS_VERSION_FEATURES
MACRUM 0:276e7a263c35 243
MACRUM 0:276e7a263c35 244 #undef MBEDTLS_DEBUG_C
MACRUM 0:276e7a263c35 245
MACRUM 0:276e7a263c35 246 // needed for parsing the certificates
MACRUM 0:276e7a263c35 247 #undef MBEDTLS_PEM_PARSE_C
MACRUM 0:276e7a263c35 248
MACRUM 0:276e7a263c35 249
MACRUM 0:276e7a263c35 250 // dep of the previous
MACRUM 0:276e7a263c35 251 #undef MBEDTLS_BASE64_C
MACRUM 0:276e7a263c35 252
MACRUM 0:276e7a263c35 253 #undef MBEDTLS_SHA512_C
MACRUM 0:276e7a263c35 254
MACRUM 0:276e7a263c35 255 #undef MBEDTLS_SSL_SRV_C
MACRUM 0:276e7a263c35 256
MACRUM 0:276e7a263c35 257 #undef MBEDTLS_ECP_DP_SECP192R1_ENABLED
MACRUM 0:276e7a263c35 258 #undef MBEDTLS_ECP_DP_SECP224R1_ENABLED
MACRUM 0:276e7a263c35 259 #undef MBEDTLS_ECP_DP_SECP384R1_ENABLED
MACRUM 0:276e7a263c35 260 #undef MBEDTLS_ECP_DP_SECP521R1_ENABLED
MACRUM 0:276e7a263c35 261 #undef MBEDTLS_ECP_DP_SECP192K1_ENABLED
MACRUM 0:276e7a263c35 262 #undef MBEDTLS_ECP_DP_SECP224K1_ENABLED
MACRUM 0:276e7a263c35 263 #undef MBEDTLS_ECP_DP_SECP256K1_ENABLED
MACRUM 0:276e7a263c35 264 #undef MBEDTLS_ECP_DP_BP256R1_ENABLED
MACRUM 0:276e7a263c35 265 #undef MBEDTLS_ECP_DP_BP384R1_ENABLED
MACRUM 0:276e7a263c35 266 #undef MBEDTLS_ECP_DP_BP512R1_ENABLED
MACRUM 0:276e7a263c35 267 #undef MBEDTLS_ECP_DP_CURVE25519_ENABLED
MACRUM 0:276e7a263c35 268
MACRUM 0:276e7a263c35 269
MACRUM 0:276e7a263c35 270 #include "mbedtls/check_config.h"
MACRUM 0:276e7a263c35 271
MACRUM 0:276e7a263c35 272 #endif /* PAL_MBEDTLS_USER_CONFIG_H */