PolarSSL v1.3.9
config.h
Go to the documentation of this file.
1
31#ifndef POLARSSL_CONFIG_H
32#define POLARSSL_CONFIG_H
33
34#if defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
35#define _CRT_SECURE_NO_DEPRECATE 1
36#endif
37
52//#define POLARSSL_HAVE_INT8
53
61//#define POLARSSL_HAVE_INT16
62
69#define POLARSSL_HAVE_LONGLONG
70
85#define POLARSSL_HAVE_ASM
86
94//#define POLARSSL_HAVE_SSE2
95
103#define POLARSSL_HAVE_TIME
104
115#define POLARSSL_HAVE_IPV6
116
133//#define POLARSSL_PLATFORM_MEMORY
134
151//#define POLARSSL_PLATFORM_NO_STD_FUNCTIONS
152
168//#define POLARSSL_PLATFORM_PRINTF_ALT
169//#define POLARSSL_PLATFORM_FPRINTF_ALT
170/* \} name SECTION: System support */
171
191//#define POLARSSL_TIMING_ALT
192
209//#define POLARSSL_AES_ALT
210//#define POLARSSL_ARC4_ALT
211//#define POLARSSL_BLOWFISH_ALT
212//#define POLARSSL_CAMELLIA_ALT
213//#define POLARSSL_DES_ALT
214//#define POLARSSL_XTEA_ALT
215//#define POLARSSL_MD2_ALT
216//#define POLARSSL_MD4_ALT
217//#define POLARSSL_MD5_ALT
218//#define POLARSSL_RIPEMD160_ALT
219//#define POLARSSL_SHA1_ALT
220//#define POLARSSL_SHA256_ALT
221//#define POLARSSL_SHA512_ALT
222
231//#define POLARSSL_AES_ROM_TABLES
232
238#define POLARSSL_CIPHER_MODE_CBC
239
245#define POLARSSL_CIPHER_MODE_CFB
246
252#define POLARSSL_CIPHER_MODE_CTR
253
285//#define POLARSSL_CIPHER_NULL_CIPHER
286
297#define POLARSSL_CIPHER_PADDING_PKCS7
298#define POLARSSL_CIPHER_PADDING_ONE_AND_ZEROS
299#define POLARSSL_CIPHER_PADDING_ZEROS_AND_LEN
300#define POLARSSL_CIPHER_PADDING_ZEROS
301
315//#define POLARSSL_ENABLE_WEAK_CIPHERSUITES
316
328//#define POLARSSL_REMOVE_ARC4_CIPHERSUITES
329
338#define POLARSSL_ECP_DP_SECP192R1_ENABLED
339#define POLARSSL_ECP_DP_SECP224R1_ENABLED
340#define POLARSSL_ECP_DP_SECP256R1_ENABLED
341#define POLARSSL_ECP_DP_SECP384R1_ENABLED
342#define POLARSSL_ECP_DP_SECP521R1_ENABLED
343#define POLARSSL_ECP_DP_SECP192K1_ENABLED
344#define POLARSSL_ECP_DP_SECP224K1_ENABLED
345#define POLARSSL_ECP_DP_SECP256K1_ENABLED
346#define POLARSSL_ECP_DP_BP256R1_ENABLED
347#define POLARSSL_ECP_DP_BP384R1_ENABLED
348#define POLARSSL_ECP_DP_BP512R1_ENABLED
349//#define POLARSSL_ECP_DP_M221_ENABLED // Not implemented yet!
350#define POLARSSL_ECP_DP_M255_ENABLED
351//#define POLARSSL_ECP_DP_M383_ENABLED // Not implemented yet!
352//#define POLARSSL_ECP_DP_M511_ENABLED // Not implemented yet!
353
363#define POLARSSL_ECP_NIST_OPTIM
364
377#define POLARSSL_ECDSA_DETERMINISTIC
378
399#define POLARSSL_KEY_EXCHANGE_PSK_ENABLED
400
423#define POLARSSL_KEY_EXCHANGE_DHE_PSK_ENABLED
424
443#define POLARSSL_KEY_EXCHANGE_ECDHE_PSK_ENABLED
444
468#define POLARSSL_KEY_EXCHANGE_RSA_PSK_ENABLED
469
496#define POLARSSL_KEY_EXCHANGE_RSA_ENABLED
497
522#define POLARSSL_KEY_EXCHANGE_DHE_RSA_ENABLED
523
547#define POLARSSL_KEY_EXCHANGE_ECDHE_RSA_ENABLED
548
571#define POLARSSL_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED
572
595#define POLARSSL_KEY_EXCHANGE_ECDH_ECDSA_ENABLED
596
619#define POLARSSL_KEY_EXCHANGE_ECDH_RSA_ENABLED
620
633#define POLARSSL_PK_PARSE_EC_EXTENDED
634
647#define POLARSSL_ERROR_STRERROR_BC
648
662#define POLARSSL_ERROR_STRERROR_DUMMY
663
671#define POLARSSL_GENPRIME
672
678#define POLARSSL_FS_IO
679
691//#define POLARSSL_NO_DEFAULT_ENTROPY_SOURCES
692
702//#define POLARSSL_NO_PLATFORM_ENTROPY
703
718//#define POLARSSL_ENTROPY_FORCE_SHA256
719
731//#define POLARSSL_MEMORY_DEBUG
732
743//#define POLARSSL_MEMORY_BACKTRACE
744
754#define POLARSSL_PKCS1_V15
755
765#define POLARSSL_PKCS1_V21
766
775//#define POLARSSL_RSA_NO_CRT
776
782#define POLARSSL_SELF_TEST
783
796#define POLARSSL_SSL_ALERT_MESSAGES
797
812//#define POLARSSL_SSL_DEBUG_ALL
813
822//#define POLARSSL_SSL_HW_RECORD_ACCEL
823
832#define POLARSSL_SSL_SRV_SUPPORT_SSLV2_CLIENT_HELLO
833
842//#define POLARSSL_SSL_SRV_RESPECT_CLIENT_PREFERENCE
843
851#define POLARSSL_SSL_MAX_FRAGMENT_LENGTH
852
863#define POLARSSL_SSL_PROTO_SSL3
864
875#define POLARSSL_SSL_PROTO_TLS1
876
887#define POLARSSL_SSL_PROTO_TLS1_1
888
899#define POLARSSL_SSL_PROTO_TLS1_2
900
909#define POLARSSL_SSL_ALPN
910
922#define POLARSSL_SSL_SESSION_TICKETS
923
931#define POLARSSL_SSL_SERVER_NAME_INDICATION
932
940#define POLARSSL_SSL_TRUNCATED_HMAC
941
954//#define POLARSSL_SSL_SET_CURVES
955
965//#define POLARSSL_THREADING_ALT
966
976//#define POLARSSL_THREADING_PTHREAD
977
989#define POLARSSL_VERSION_FEATURES
990
999//#define POLARSSL_X509_ALLOW_EXTENSIONS_NON_V3
1000
1009//#define POLARSSL_X509_ALLOW_UNSUPPORTED_CRITICAL_EXTENSION
1010
1023#define POLARSSL_X509_CHECK_KEY_USAGE
1024
1036#define POLARSSL_X509_CHECK_EXTENDED_KEY_USAGE
1037
1046#define POLARSSL_X509_RSASSA_PSS_SUPPORT
1047
1066#define POLARSSL_ZLIB_SUPPORT
1067/* \} name SECTION: PolarSSL feature support */
1068
1088#define POLARSSL_AESNI_C
1089
1163#define POLARSSL_AES_C
1164
1186#define POLARSSL_ARC4_C
1187
1200#define POLARSSL_ASN1_PARSE_C
1201
1214#define POLARSSL_ASN1_WRITE_C
1215
1226#define POLARSSL_BASE64_C
1227
1242#define POLARSSL_BIGNUM_C
1243
1251#define POLARSSL_BLOWFISH_C
1252
1306#define POLARSSL_CAMELLIA_C
1307
1320#define POLARSSL_CCM_C
1321
1334#define POLARSSL_CERTS_C
1335
1346#define POLARSSL_CIPHER_C
1347
1360#define POLARSSL_CTR_DRBG_C
1361
1374#define POLARSSL_DEBUG_C
1375
1400#define POLARSSL_DES_C
1401
1414#define POLARSSL_DHM_C
1415
1430#define POLARSSL_ECDH_C
1431
1445#define POLARSSL_ECDSA_C
1446
1458#define POLARSSL_ECP_C
1459
1472#define POLARSSL_ENTROPY_C
1473
1484#define POLARSSL_ERROR_C
1485
1498#define POLARSSL_GCM_C
1499
1521#define POLARSSL_HAVEGE_C
1522
1535#define POLARSSL_HMAC_DRBG_C
1536
1547#define POLARSSL_MD_C
1548
1559//#define POLARSSL_MD2_C
1560
1571//#define POLARSSL_MD4_C
1572
1586#define POLARSSL_MD5_C
1587
1592//#define POLARSSL_MEMORY_C
1593
1608//#define POLARSSL_MEMORY_BUFFER_ALLOC_C
1609
1619#define POLARSSL_NET_C
1620
1642#define POLARSSL_OID_C
1643
1656#define POLARSSL_PADLOCK_C
1657
1670#define POLARSSL_PBKDF2_C
1671
1688#define POLARSSL_PEM_PARSE_C
1689
1704#define POLARSSL_PEM_WRITE_C
1705
1720#define POLARSSL_PK_C
1721
1735#define POLARSSL_PK_PARSE_C
1736
1749#define POLARSSL_PK_WRITE_C
1750
1762#define POLARSSL_PKCS5_C
1763
1777//#define POLARSSL_PKCS11_C
1778
1793#define POLARSSL_PKCS12_C
1794
1806#define POLARSSL_PLATFORM_C
1807
1817#define POLARSSL_RIPEMD160_C
1818
1835#define POLARSSL_RSA_C
1836
1851#define POLARSSL_SHA1_C
1852
1869#define POLARSSL_SHA256_C
1870
1885#define POLARSSL_SHA512_C
1886
1897#define POLARSSL_SSL_CACHE_C
1898
1911#define POLARSSL_SSL_CLI_C
1912
1925#define POLARSSL_SSL_SRV_C
1926
1941#define POLARSSL_SSL_TLS_C
1942
1962//#define POLARSSL_THREADING_C
1963
1974#define POLARSSL_TIMING_C
1975
1985#define POLARSSL_VERSION_C
1986
2002#define POLARSSL_X509_USE_C
2003
2018#define POLARSSL_X509_CRT_PARSE_C
2019
2032#define POLARSSL_X509_CRL_PARSE_C
2033
2046#define POLARSSL_X509_CSR_PARSE_C
2047
2059#define POLARSSL_X509_CREATE_C
2060
2072#define POLARSSL_X509_CRT_WRITE_C
2073
2085#define POLARSSL_X509_CSR_WRITE_C
2086
2095#define POLARSSL_XTEA_C
2096
2097/* \} name SECTION: PolarSSL modules */
2098
2114/* MPI / BIGNUM options */
2115//#define POLARSSL_MPI_WINDOW_SIZE 6 /**< Maximum windows size used. */
2116//#define POLARSSL_MPI_MAX_SIZE 1024 /**< Maximum number of bytes for usable MPIs. */
2117
2118/* CTR_DRBG options */
2119//#define CTR_DRBG_ENTROPY_LEN 48 /**< Amount of entropy used per seed by default (48 with SHA-512, 32 with SHA-256) */
2120//#define CTR_DRBG_RESEED_INTERVAL 10000 /**< Interval before reseed is performed by default */
2121//#define CTR_DRBG_MAX_INPUT 256 /**< Maximum number of additional input bytes */
2122//#define CTR_DRBG_MAX_REQUEST 1024 /**< Maximum number of requested bytes per call */
2123//#define CTR_DRBG_MAX_SEED_INPUT 384 /**< Maximum size of (re)seed buffer */
2124
2125/* HMAC_DRBG options */
2126//#define POLARSSL_HMAC_DRBG_RESEED_INTERVAL 10000 /**< Interval before reseed is performed by default */
2127//#define POLARSSL_HMAC_DRBG_MAX_INPUT 256 /**< Maximum number of additional input bytes */
2128//#define POLARSSL_HMAC_DRBG_MAX_REQUEST 1024 /**< Maximum number of requested bytes per call */
2129//#define POLARSSL_HMAC_DRBG_MAX_SEED_INPUT 384 /**< Maximum size of (re)seed buffer */
2130
2131/* ECP options */
2132//#define POLARSSL_ECP_MAX_BITS 521 /**< Maximum bit size of groups */
2133//#define POLARSSL_ECP_WINDOW_SIZE 6 /**< Maximum window size used */
2134//#define POLARSSL_ECP_FIXED_POINT_OPTIM 1 /**< Enable fixed-point speed-up */
2135
2136/* Entropy options */
2137//#define ENTROPY_MAX_SOURCES 20 /**< Maximum number of sources supported */
2138//#define ENTROPY_MAX_GATHER 128 /**< Maximum amount requested from entropy sources */
2139
2140/* Memory buffer allocator options */
2141//#define POLARSSL_MEMORY_ALIGN_MULTIPLE 4 /**< Align on multiples of this value */
2142
2143/* Platform options */
2144//#define POLARSSL_PLATFORM_STD_MEM_HDR <stdlib.h> /**< Header to include if POLARSSL_PLATFORM_NO_STD_FUNCTIONS is defined. Don't define if no header is needed. */
2145//#define POLARSSL_PLATFORM_STD_MALLOC malloc /**< Default allocator to use, can be undefined */
2146//#define POLARSSL_PLATFORM_STD_FREE free /**< Default free to use, can be undefined */
2147//#define POLARSSL_PLATFORM_STD_PRINTF printf /**< Default printf to use, can be undefined */
2148//#define POLARSSL_PLATFORM_STD_FPRINTF fprintf /**< Default fprintf to use, can be undefined */
2149
2150/* SSL Cache options */
2151//#define SSL_CACHE_DEFAULT_TIMEOUT 86400 /**< 1 day */
2152//#define SSL_CACHE_DEFAULT_MAX_ENTRIES 50 /**< Maximum entries in cache */
2153
2154/* SSL options */
2155//#define SSL_MAX_CONTENT_LEN 16384 /**< Size of the input / output buffer */
2156//#define SSL_DEFAULT_TICKET_LIFETIME 86400 /**< Lifetime of session tickets (if enabled) */
2157//#define POLARSSL_PSK_MAX_LEN 32 /**< Max size of TLS pre-shared keys, in bytes (default 256 bits) */
2158
2171//#define SSL_CIPHERSUITES TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
2172
2173/* Debug options */
2174//#define POLARSSL_DEBUG_DFL_MODE POLARSSL_DEBUG_LOG_FULL /**< Default log: Full or Raw */
2175
2176/* \} name SECTION: Module configuration options */
2177
2178#include "check_config.h"
2179
2180#endif /* POLARSSL_CONFIG_H */
Consistency checks for configuration options.