1 /* user_settings.h
2  *
3  * Copyright (C) 2006-2021 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 #ifndef USER_SETTINGS_H_
22 #define USER_SETTINGS_H_
23 
24 
25 /* Temporary defines. Not suitable for production. */
26 #define WOLFSSL_GENSEED_FORTEST /* Warning: define your own seed gen */
27 /* End temporary defines */
28 
29 /* TLS 1.3 */
30 #define WOLFSSL_TLS13
31 #define HAVE_HKDF
32 #define WC_RSA_PSS
33 
34 /* Operating Environment and Threading */
35 #define FREERTOS
36 #define FREERTOS_TCP
37 #define NO_DEV_RANDOM
38 #define NO_WRITEV
39 #define NO_MAIN_DRIVER
40 #define BENCH_EMBEDDED
41 
42 /* Filesystem and IO */
43 #define NO_WOLFSSL_DIR
44 #define WOLFSSL_NO_CURRDIR
45 #define NO_FILESYSTEM
46 
47 /* Cryptography Enable Options */
48 #define HAVE_CHACHA
49 #define HAVE_POLY1305
50 #define HAVE_ECC
51 #define HAVE_RSA
52 #define HAVE_SHA256
53 #define HAVE_SUPPORTED_CURVES
54 #define HAVE_TLS_EXTENSIONS
55 #define HAVE_TRUNCATED_HMAC
56 #define HAVE_EXTENDED_MASTER
57 #define HAVE_ALPN
58 #define HAVE_SNI
59 #define HAVE_OCSP
60 #define HAVE_AESGCM
61 #define HAVE_ONE_TIME_AUTH
62 
63 /* Non-Fast Math may call realloc. This project has no realloc support */
64 #define USE_FAST_MATH
65 #define ALT_ECC_SIZE
66 #define TFM_TIMING_RESISTANT
67 #define ECC_TIMING_RESISTANT
68 #define WC_RSA_BLINDING
69 #define WOLFSSL_SMALL_STACK
70 #define WOLFSSL_DH_CONST
71 
72 /* Cryptography Disable options */
73 #define NO_PWDBASED
74 #define NO_DSA
75 #define NO_DES3
76 #define NO_RABBIT
77 #define NO_RC4
78 #define NO_MD4
79 
80 void wolfssl_thread_entry(void *pvParameters);
81 extern void initialise_monitor_handles(void);
82 int strncasecmp(const char *s1, const char * s2, unsigned int sz);
83 
84 #endif /* USER_SETTINGS_H_ */
85