config-RTX-TCP-FS.h
1 /* config-RTX-TCP-FS.h
2  *
3  * Copyright (C) 2006-2020 wolfSSL Inc.
4  *
5  * This file is part of wolfSSL.
6  *
7  * wolfSSL is free software; you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation; either version 2 of the License, or
10  * (at your option) any later version.
11  *
12  * wolfSSL is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with this program; if not, write to the Free Software
19  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
20  */
21 
22 
23 
24 
25 /**** wolfSSL for MDK-RTX-TCP-FS Configuration ****/
26 
27 #define __CORTEX_M3__
28 #define WOLFSSL_MDK_ARM
29 #define NO_WRITEV
30 #define NO_WOLFSSL_DIR
31 #define NO_MAIN_DRIVER
32 
33 #define WOLFSSL_DER_LOAD
34 #define HAVE_NULL_CIPHER
35 
36 #define HAVE_KEIL_RTX
37 #define WOLFSSL_KEIL_TCP_NET
38 
39 
40 // <<< Use Configuration Wizard in Context Menu >>>
41 // <h> Build Target: KEIL-RTX-TCP-FS
42 // <h> RTOS, File System and TCP-net
43 // </h>
44 // <e>Command Shell
45 #define MDK_CONF_SHELL 1
46 #if MDK_CONF_SHELL == 1
47 #define WOLFSSL_MDK_SHELL
48 #endif
49 // </e>
50 // <h>wolfSSL Apps
51 // <h>Crypt/Cipher
52 // <o>Cert Storage <0=> SD Card <1=> Mem Buff (1024bytes) <2=> Mem Buff (2048bytes)
53 #define MDK_CONF_CERT_BUFF 0
54 #if MDK_CONF_CERT_BUFF== 1
55 #define USE_CERT_BUFFERS_1024
56 #elif MDK_CONF_CERT_BUFF == 2
57 #define USE_CERT_BUFFERS_2048
58 #endif
59 
60 // <e>Crypt/Cipher Test Suite
61 #define MDK_CONF_CTaoCryptTest 1
62 #if MDK_CONF_CTaoCryptTest == 0
63 #define NO_CRYPT_TEST
64 #endif
65 // </e>
66 // <e>Crypt/Cipher Benchmark
67 #define MDK_CONF_CTaoCryptBenchmark 1
68 #if MDK_CONF_CTaoCryptBenchmark == 0
69 #define NO_CRYPT_BENCHMARK
70 #define BENCH_EMBEDDED
71 #endif
72 // </e>
73 // </h>
74 // <h>SSL/TLS Server/Client
75 // <e>echoServer
76 #define MDK_CONF_echoServer 1
77 #if MDK_CONF_echoServer == 0
78 #define NO_ECHOSERVER
79 #endif
80 // </e>
81 // <e>echoClient
82 #define MDK_CONF_echoClient 1
83 #if MDK_CONF_echoClient == 0
84 #define NO_ECHOCLIENT
85 #endif
86 // </e>
87 // <e>SimpleServer
88 #define MDK_CONF_simpleServer 1
89 #if MDK_CONF_simpleServer == 0
90 #define NO_SIMPLE_SERVER
91 #endif
92 // </e>
93 // <e>SimpleCliet
94 #define MDK_CONF_simpleClient 1
95 #if MDK_CONF_simpleClient == 0
96 #define NO_SIMPLE_CLIENT
97 #endif
98 // </e>
99 // </h>
100 // </h>
101 // <h>STM32 Hardware Crypt
102 // <e>STM32F2 Hardware RNG
103 #define MDK_CONF_STM32F2_RNG 0
104 #if MDK_CONF_STM32F2_RNG == 1
105 #define STM32F2_RNG
106 #else
107 #define NO_DEV_RANDOM
108 #endif
109 // </e>
110 // <e>STM32F2 Hardware Crypt
111 #define MDK_CONF_STM32F2_CRYPTO 0
112 #if MDK_CONF_STM32F2_CRYPTO == 1
113 #define STM32F2_CRYPTO
114 #endif
115 // </e>
116 
117 // </h>
118 
119 // <h>wolfSSL Library
120 // <h>SSL (Included by default)
121 // </h>
122 
123 // <e>TLS
124 #define MDK_CONF_TLS 1
125 #if MDK_CONF_TLS == 0
126 #define NO_TLS
127 #endif
128 // </e>
129 
130 // <e>CertGen
131 #define MDK_CONF_CERT_GEN 0
132 #if MDK_CONF_CERT_GEN == 1
133 #define WOLFSSL_CERT_GEN
134 #endif
135 // </e>
136 // <e>KeyGen
137 #define MDK_CONF_KEY_GEN 0
138 #if MDK_CONF_KEY_GEN == 1
139 #define WOLFSSL_KEY_GEN
140 #endif
141 // </e>
142 // <e>CRL
143 #define MDK_CONF_DER_LOAD 0
144 #if MDK_CONF_DER_LOAD == 1
145 #define WOLFSSL_DER_LOAD
146 #endif
147 // </e>
148 // <e>OpenSSL Extra
149 #define MDK_CONF_OPENSSL_EXTRA 0
150 #if MDK_CONF_OPENSSL_EXTRA == 1
151 #define OPENSSL_EXTRA
152 #endif
153 // </e>
154 // <h>CRL Monitor, OCSP (not supported with KEIL)
155 // </h>
156 
157 // </h>
158 
159 // <h>wolfCrypt Library
160 
161 // <h>MD5, SHA, SHA-256, AES, RC4, ASN, RSA
162 // </h>
163 // <e>MD2
164 #define MDK_CONF_MD2 0
165 #if MDK_CONF_MD2 == 1
166 #define WOLFSSL_MD2
167 #endif
168 // </e>
169 // <e>MD4
170 #define MDK_CONF_MD4 0
171 #if MDK_CONF_MD4 == 0
172 #define NO_MD4
173 #endif
174 // </e>
175 // <e>SHA-384
176 // <i>This has to be with SHA512
177 #define MDK_CONF_SHA384 0
178 #if MDK_CONF_SHA384 == 1
179 #define WOLFSSL_SHA384
180 #endif
181 // </e>
182 // <e>SHA-512
183 #define MDK_CONF_SHA512 0
184 #if MDK_CONF_SHA512 == 1
185 #define WOLFSSL_SHA512
186 #endif
187 // </e>
188 // <e>RIPEMD
189 #define MDK_CONF_RIPEMD 0
190 #if MDK_CONF_RIPEMD == 1
191 #define WOLFSSL_RIPEMD
192 #endif
193 // </e>
194 // <e>HMAC
195 #define MDK_CONF_HMAC 1
196 #if MDK_CONF_HMAC == 0
197 #define NO_HMAC
198 #endif
199 // </e>
200 // <e>HC128
201 #define MDK_CONF_HC128 0
202 #if MDK_CONF_HC128 == 1
203 #define HAVE_HC128
204 #endif
205 // </e>
206 // <e>RABBIT
207 #define MDK_CONF_RABBIT 1
208 #if MDK_CONF_RABBI == 0
209 #define NO_RABBIT
210 #endif
211 // </e>
212 
213 // <e>AEAD
214 #define MDK_CONF_AEAD 0
215 #if MDK_CONF_AEAD == 1
216 #define HAVE_AEAD
217 #endif
218 // </e>
219 // <e>DES3
220 #define MDK_CONF_DES3 0
221 #if MDK_CONF_DES3 == 0
222 #define NO_DES3
223 #endif
224 // </e>
225 // <e>CAMELLIA
226 #define MDK_CONF_CAMELLIA 0
227 #if MDK_CONF_CAMELLIA == 1
228 #define HAVE_CAMELLIA
229 #endif
230 // </e>
231 
232 // <e>DH
233 // <i>need this for WOLFSSL_SERVER, OPENSSL_EXTRA
234 #define MDK_CONF_DH 1
235 #if MDK_CONF_DH == 0
236 #define NO_DH
237 #endif
238 // </e>
239 // <e>DSA
240 #define MDK_CONF_DSA 1
241 #if MDK_CONF_DSA == 0
242 #define NO_DSA
243 #endif
244 // </e>
245 // <e>PWDBASED
246 #define MDK_CONF_PWDBASED 1
247 #if MDK_CONF_PWDBASED == 0
248 #define NO_PWDBASED
249 #endif
250 // </e>
251 
252 // <e>ECC
253 #define MDK_CONF_ECC 0
254 #if MDK_CONF_ECC == 1
255 #define HAVE_ECC
256 #endif
257 // </e>
258 // <e>PSK
259 #define MDK_CONF_PSK 1
260 #if MDK_CONF_PSK == 0
261 #define NO_PSK
262 #endif
263 // </e>
264 // <e>AESCCM (Turn off Hardware Crypt)
265 #define MDK_CONF_AESCCM 0
266 #if MDK_CONF_AESCCM == 1
267 #define HAVE_AESCCM
268 #endif
269 // </e>
270 // <e>AESGCM (Turn off Hardware Crypt)
271 #define MDK_CONF_AESGCM 0
272 #if MDK_CONF_AESGCM == 1
273 #define HAVE_AESGCM
274 #define BUILD_AESGCM
275 #endif
276 // </e>
277 // <e>NTRU (need License, "crypto_ntru.h")
278 #define MDK_CONF_NTRU 0
279 #if MDK_CONF_NTRU == 1
280 #define HAVE_NTRU
281 #endif
282 // </e>
283 // </h>
284 
285 // <h>Others
286 
287 // <e>Inline
288 #define MDK_CONF_INLINE 0
289 #if MDK_CONF_INLINE == 0
290 #define NO_INLINE
291 #endif
292 // </e>
293 // <h>Debug
294 // <e>Debug Message
295 #define MDK_CONF_DEBUG_MSG 0
296 #if MDK_CONF_DEBUG_MSG == 1
297 #define DEBUG_WOLFSSL
298 #endif
299 // </e>
300 // <e>Check malloc
301 #define MDK_CONF_CHECK_MALLOC 1
302 #if MDK_CONF_CHECK_MALLOC == 1
303 #define WOLFSSL_MALLOC_CHECK
304 #endif
305 // </e>
306 
307 
308 // </h>
309 // <e>ErrNo.h
310 #define MDK_CONF_ERR_NO 0
311 #if MDK_CONF_ERR_NO == 1
312 #define HAVE_ERRNO
313 #endif
314 // </e>
315 // <e>zlib (need "zlib.h")
316 #define MDK_CONF_LIBZ 0
317 #if MDK_CONF_LIBZ == 1
318 #define HAVE_LIBZ
319 #endif
320 // </e>
321 // <e>CAVIUM (need CAVIUM headers)
322 #define MDK_CONF_CAVIUM 0
323 #if MDK_CONF_CAVIUM == 1
324 #define HAVE_CAVIUM
325 #endif
326 // </e>
327 
328 // <e>Error Strings
329 #define MDK_CONF_ErrorStrings 0
330 #if MDK_CONF_ErrorStrings == 0
331 #define NO_ERROR_STRINGS
332 #endif
333 // </e>
334 
335 // <e>Small Stack
336 #define MDK_CONF_SMALL_STACK 1
337 #if MDK_CONF_SMALL_STACK == 0
338 #define NO_WOLFSSL_SMALL_STACK
339 #endif
340 // </e>
341 // <e>Use Fast Math
342 #define MDK_CONF_FASTMATH 1
343 #if MDK_CONF_FASTMATH == 1
344 #define USE_FAST_MATH
345 #define TFM_TIMING_RESISTANT
346 #endif
347 // </e>
348 
349 
350 // </h>
351 
352 //</h>
353 // <<< end of configuration section >>>
354