4 * This set of compile-time options may be used to enable
\r
5 * or disable features selectively, and reduce the global
\r
8 #ifndef XYSSL_CONFIG_H
\r
9 #define XYSSL_CONFIG_H
\r
11 #ifndef _CRT_SECURE_NO_DEPRECATE
\r
12 #define _CRT_SECURE_NO_DEPRECATE 1
\r
16 * Uncomment if native integers are 8-bit wide.
\r
18 #define XYSSL_HAVE_INT8
\r
22 * Uncomment if native integers are 16-bit wide.
\r
24 #define XYSSL_HAVE_INT16
\r
28 * Uncomment if the compiler supports long long.
\r
30 #define XYSSL_HAVE_LONGLONG
\r
34 * Uncomment if the CPU supports SSE2 (IA-32 specific).
\r
36 #define XYSSL_HAVE_SSE2
\r
40 * Enable all SSL/TLS debugging messages.
\r
42 #define XYSSL_DEBUG_MSG
\r
45 * Enable the checkup functions (*_self_test).
\r
47 #define XYSSL_SELF_TEST
\r
51 * Enable the prime-number generation code.
\r
53 #define XYSSL_GENPRIME
\r
56 * Uncomment this macro to store the AES tables in ROM.
\r
58 #define XYSSL_AES_ROM_TABLES
\r
62 * Module: library/aes.c
\r
63 * Caller: library/ssl_tls.c
\r
65 * This module enables the following ciphersuites:
\r
66 * SSL_RSA_AES_256_SHA
\r
67 * SSL_EDH_RSA_AES_256_SHA
\r
72 * Module: library/arc4.c
\r
73 * Caller: library/ssl_tls.c
\r
75 * This module enables the following ciphersuites:
\r
76 * SSL_RSA_RC4_128_MD5
\r
77 * SSL_RSA_RC4_128_SHA
\r
79 #define XYSSL_ARC4_C
\r
82 * Module: library/base64.c
\r
83 * Caller: library/x509parse.c
\r
85 * This module is required for X.509 support.
\r
87 #define XYSSL_BASE64_C
\r
90 * Module: library/bignum.c
\r
91 * Caller: library/dhm.c
\r
94 * library/x509parse.c
\r
96 * This module is required for RSA and DHM support.
\r
98 #define XYSSL_BIGNUM_C
\r
101 * Module: library/certs.c
\r
104 * This module is used for testing (ssl_client/server).
\r
106 #define XYSSL_CERTS_C
\r
109 * Module: library/debug.c
\r
110 * Caller: library/ssl_cli.c
\r
111 * library/ssl_srv.c
\r
112 * library/ssl_tls.c
\r
114 * This module provides debugging functions.
\r
116 #define XYSSL_DEBUG_C
\r
120 * Module: library/des.c
\r
121 * Caller: library/ssl_tls.c
\r
123 * This module enables the following ciphersuites:
\r
124 * SSL_RSA_DES_168_SHA
\r
125 * SSL_EDH_RSA_DES_168_SHA
\r
127 #define XYSSL_DES_C
\r
130 * Module: library/dhm.c
\r
131 * Caller: library/ssl_cli.c
\r
132 * library/ssl_srv.c
\r
134 * This module enables the following ciphersuites:
\r
135 * SSL_EDH_RSA_DES_168_SHA
\r
136 * SSL_EDH_RSA_AES_256_SHA
\r
138 #define XYSSL_DHM_C
\r
141 * Module: library/havege.c
\r
144 * This module enables the HAVEGE random number generator.
\r
146 #define XYSSL_HAVEGE_C
\r
149 * Module: library/md2.c
\r
150 * Caller: library/x509parse.c
\r
152 * This module enables support for MD2-signed X.509 certificates.
\r
154 #define XYSSL_MD2_C
\r
157 * Module: library/md4.c
\r
158 * Caller: library/x509parse.c
\r
160 * This module enables support for MD4-signed X.509 certificates.
\r
162 #define XYSSL_MD4_C
\r
165 * Module: library/md5.c
\r
166 * Caller: library/ssl_tls.c
\r
167 * library/x509parse.c
\r
169 * This module is required for SSL/TLS and X.509.
\r
171 #define XYSSL_MD5_C
\r
174 * Module: library/net.c
\r
177 * This module provides TCP/IP networking routines.
\r
179 #define XYSSL_NET_C
\r
182 * Module: library/padlock.c
\r
183 * Caller: library/aes.c
\r
185 * This modules adds support for the VIA PadLock on x86.
\r
187 #define XYSSL_PADLOCK_C
\r
190 * Module: library/rsa.c
\r
191 * Caller: library/ssl_cli.c
\r
192 * library/ssl_srv.c
\r
193 * library/ssl_tls.c
\r
196 * This module is required for SSL/TLS and X.509.
\r
198 #define XYSSL_RSA_C
\r
201 * Module: library/sha1.c
\r
202 * Caller: library/ssl_cli.c
\r
203 * library/ssl_srv.c
\r
204 * library/ssl_tls.c
\r
205 * library/x509parse.c
\r
207 * This module is required for SSL/TLS and X.509.
\r
209 #define XYSSL_SHA1_C
\r
212 * Module: library/sha2.c
\r
215 * This module adds support for SHA-224 and SHA-256.
\r
217 #define XYSSL_SHA2_C
\r
220 * Module: library/sha4.c
\r
223 * This module adds support for SHA-384 and SHA-512.
\r
225 #define XYSSL_SHA4_C
\r
228 * Module: library/ssl_cli.c
\r
231 * This module is required for SSL/TLS client support.
\r
233 #define XYSSL_SSL_CLI_C
\r
236 * Module: library/ssl_srv.c
\r
239 * This module is required for SSL/TLS server support.
\r
241 #define XYSSL_SSL_SRV_C
\r
244 * Module: library/ssl_tls.c
\r
245 * Caller: library/ssl_cli.c
\r
246 * library/ssl_srv.c
\r
248 * This module is required for SSL/TLS.
\r
250 #define XYSSL_SSL_TLS_C
\r
253 * Module: library/timing.c
\r
254 * Caller: library/havege.c
\r
256 * This module is used by the HAVEGE random number generator.
\r
258 #define XYSSL_TIMING_C
\r
261 * Module: library/x509parse.c
\r
262 * Caller: library/ssl_cli.c
\r
263 * library/ssl_srv.c
\r
264 * library/ssl_tls.c
\r
266 * This module is required for X.509 certificate parsing.
\r
268 #define XYSSL_X509_PARSE_C
\r
271 * Module: library/x509_write.c
\r
274 * This module is required for X.509 certificate writing.
\r
276 #define XYSSL_X509_WRITE_C
\r
278 #endif /* config.h */
\r