mbedtls: add --function-sections and --data-sections to CFLAGS
[openwrt/staging/yousong.git] / package / utils / px5g-standalone / src / polarssl / config.h
1 /**
2 * \file config.h
3 *
4 * Based on XySSL: Copyright (C) 2006-2008 Christophe Devine
5 *
6 * Copyright (C) 2009 Paul Bakker <polarssl_maintainer at polarssl dot org>
7 *
8 * All rights reserved.
9 *
10 * Redistribution and use in source and binary forms, with or without
11 * modification, are permitted provided that the following conditions
12 * are met:
13 *
14 * * Redistributions of source code must retain the above copyright
15 * notice, this list of conditions and the following disclaimer.
16 * * Redistributions in binary form must reproduce the above copyright
17 * notice, this list of conditions and the following disclaimer in the
18 * documentation and/or other materials provided with the distribution.
19 * * Neither the names of PolarSSL or XySSL nor the names of its contributors
20 * may be used to endorse or promote products derived from this software
21 * without specific prior written permission.
22 *
23 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
24 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
25 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
26 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
27 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
28 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
29 * TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
30 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
31 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
32 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
33 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
34 *
35 * This set of compile-time options may be used to enable
36 * or disable features selectively, and reduce the global
37 * memory footprint.
38 */
39 #ifndef POLARSSL_CONFIG_H
40 #define POLARSSL_CONFIG_H
41
42 #ifndef _CRT_SECURE_NO_DEPRECATE
43 #define _CRT_SECURE_NO_DEPRECATE 1
44 #endif
45
46 /*
47 * Uncomment if native integers are 8-bit wide.
48 *
49 #define POLARSSL_HAVE_INT8
50 */
51
52 /*
53 * Uncomment if native integers are 16-bit wide.
54 *
55 #define POLARSSL_HAVE_INT16
56 */
57
58 /*
59 * Uncomment if the compiler supports long long.
60 #define POLARSSL_HAVE_LONGLONG
61 */
62
63
64 /*
65 * Uncomment to enable the use of assembly code.
66 */
67 /* #define POLARSSL_HAVE_ASM */
68
69 /*
70 * Uncomment if the CPU supports SSE2 (IA-32 specific).
71 *
72 #define POLARSSL_HAVE_SSE2
73 */
74
75 /*
76 * Enable all SSL/TLS debugging messages.
77 */
78 #define POLARSSL_DEBUG_MSG
79
80 /*
81 * Enable the checkup functions (*_self_test).
82 */
83 #define POLARSSL_SELF_TEST
84
85 /*
86 * Enable the prime-number generation code.
87 */
88 #define POLARSSL_GENPRIME
89
90 /*
91 * Uncomment this macro to store the AES tables in ROM.
92 *
93 #define POLARSSL_AES_ROM_TABLES
94 */
95
96 /*
97 * Module: library/aes.c
98 * Caller: library/ssl_tls.c
99 *
100 * This module enables the following ciphersuites:
101 * SSL_RSA_AES_128_SHA
102 * SSL_RSA_AES_256_SHA
103 * SSL_EDH_RSA_AES_256_SHA
104 */
105 #define POLARSSL_AES_C
106
107 /*
108 * Module: library/arc4.c
109 * Caller: library/ssl_tls.c
110 *
111 * This module enables the following ciphersuites:
112 * SSL_RSA_RC4_128_MD5
113 * SSL_RSA_RC4_128_SHA
114 */
115 #define POLARSSL_ARC4_C
116
117 /*
118 * Module: library/base64.c
119 * Caller: library/x509parse.c
120 *
121 * This module is required for X.509 support.
122 */
123 #define POLARSSL_BASE64_C
124
125 /*
126 * Module: library/bignum.c
127 * Caller: library/dhm.c
128 * library/rsa.c
129 * library/ssl_tls.c
130 * library/x509parse.c
131 *
132 * This module is required for RSA and DHM support.
133 */
134 #define POLARSSL_BIGNUM_C
135
136 /*
137 * Module: library/camellia.c
138 * Caller:
139 *
140 * This module enabled the following cipher suites:
141 */
142 #define POLARSSL_CAMELLIA_C
143
144 /*
145 * Module: library/certs.c
146 * Caller:
147 *
148 * This module is used for testing (ssl_client/server).
149 */
150 #define POLARSSL_CERTS_C
151
152 /*
153 * Module: library/debug.c
154 * Caller: library/ssl_cli.c
155 * library/ssl_srv.c
156 * library/ssl_tls.c
157 *
158 * This module provides debugging functions.
159 */
160 #define POLARSSL_DEBUG_C
161
162 /*
163 * Module: library/des.c
164 * Caller: library/ssl_tls.c
165 *
166 * This module enables the following ciphersuites:
167 * SSL_RSA_DES_168_SHA
168 * SSL_EDH_RSA_DES_168_SHA
169 */
170 #define POLARSSL_DES_C
171
172 /*
173 * Module: library/dhm.c
174 * Caller: library/ssl_cli.c
175 * library/ssl_srv.c
176 *
177 * This module enables the following ciphersuites:
178 * SSL_EDH_RSA_DES_168_SHA
179 * SSL_EDH_RSA_AES_256_SHA
180 */
181 #define POLARSSL_DHM_C
182
183 /*
184 * Module: library/havege.c
185 * Caller:
186 *
187 * This module enables the HAVEGE random number generator.
188 */
189 #define POLARSSL_HAVEGE_C
190
191 /*
192 * Module: library/md2.c
193 * Caller: library/x509parse.c
194 *
195 * Uncomment to enable support for (rare) MD2-signed X.509 certs.
196 *
197 #define POLARSSL_MD2_C
198 */
199
200 /*
201 * Module: library/md4.c
202 * Caller: library/x509parse.c
203 *
204 * Uncomment to enable support for (rare) MD4-signed X.509 certs.
205 *
206 #define POLARSSL_MD4_C
207 */
208
209 /*
210 * Module: library/md5.c
211 * Caller: library/ssl_tls.c
212 * library/x509parse.c
213 *
214 * This module is required for SSL/TLS and X.509.
215 */
216 #define POLARSSL_MD5_C
217
218 /*
219 * Module: library/net.c
220 * Caller:
221 *
222 * This module provides TCP/IP networking routines.
223 */
224 #define POLARSSL_NET_C
225
226 /*
227 * Module: library/padlock.c
228 * Caller: library/aes.c
229 *
230 * This modules adds support for the VIA PadLock on x86.
231 */
232 #define POLARSSL_PADLOCK_C
233
234 /*
235 * Module: library/rsa.c
236 * Caller: library/ssl_cli.c
237 * library/ssl_srv.c
238 * library/ssl_tls.c
239 * library/x509.c
240 *
241 * This module is required for SSL/TLS and MD5-signed certificates.
242 */
243 #define POLARSSL_RSA_C
244
245 /*
246 * Module: library/sha1.c
247 * Caller: library/ssl_cli.c
248 * library/ssl_srv.c
249 * library/ssl_tls.c
250 * library/x509parse.c
251 *
252 * This module is required for SSL/TLS and SHA1-signed certificates.
253 */
254 #define POLARSSL_SHA1_C
255
256 /*
257 * Module: library/sha2.c
258 * Caller:
259 *
260 * This module adds support for SHA-224 and SHA-256.
261 */
262 #define POLARSSL_SHA2_C
263
264 /*
265 * Module: library/sha4.c
266 * Caller:
267 *
268 * This module adds support for SHA-384 and SHA-512.
269 */
270 #define POLARSSL_SHA4_C
271
272 /*
273 * Module: library/ssl_cli.c
274 * Caller:
275 *
276 * This module is required for SSL/TLS client support.
277 */
278 #define POLARSSL_SSL_CLI_C
279
280 /*
281 * Module: library/ssl_srv.c
282 * Caller:
283 *
284 * This module is required for SSL/TLS server support.
285 */
286 #define POLARSSL_SSL_SRV_C
287
288 /*
289 * Module: library/ssl_tls.c
290 * Caller: library/ssl_cli.c
291 * library/ssl_srv.c
292 *
293 * This module is required for SSL/TLS.
294 */
295 #define POLARSSL_SSL_TLS_C
296
297 /*
298 * Module: library/timing.c
299 * Caller: library/havege.c
300 *
301 * This module is used by the HAVEGE random number generator.
302 */
303 #define POLARSSL_TIMING_C
304
305 /*
306 * Module: library/x509parse.c
307 * Caller: library/ssl_cli.c
308 * library/ssl_srv.c
309 * library/ssl_tls.c
310 *
311 * This module is required for X.509 certificate parsing.
312 */
313 #define POLARSSL_X509_PARSE_C
314
315 /*
316 * Module: library/x509_write.c
317 * Caller:
318 *
319 * This module is required for X.509 certificate writing.
320 */
321 #define POLARSSL_X509_WRITE_C
322
323 /*
324 * Module: library/xtea.c
325 * Caller:
326 */
327 #define POLARSSL_XTEA_C
328
329 #endif /* config.h */