user_settings.h
1 /* user_settings.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 #define NO_MAIN_DRIVER
23 #define BENCH_EMBEDDED
24 #define NO_WRITEV
25 #define WOLFSSL_USER_IO
26 #define NO_DEV_RANDOM
27 #define USE_CERT_BUFFERS_2048
28 #define WOLFSSL_USER_CURRTIME
29 #define SIZEOF_LONG_LONG 8
30 #define NO_WOLFSSL_DIR
31 #define WOLFSSL_NO_CURRDIR
32 #define NO_FILESYSTEM
33 #define WOLFSSL_LOG_PRINTF
34 #define WOLFSSL_HAVE_MIN
35 #define WOLFSSL_HAVE_MAX
36 #if !defined(min)
37  #define min(data1, data2) _builtin_min(data1, data2)
38 #endif
39 
40 #define WOLFSSL_SMALL_STACK
41 #define WOLFSSL_DH_CONST
42 #define HAVE_TLS_EXTENSIONS
43 #define HAVE_SUPPORTED_CURVES
44 
45 #define USER_TIME
46 #define XTIME time
47 #define USE_WOLF_SUSECONDS_T
48 #define USE_WOLF_TIMEVAL_T
49 
50 #define WOLFSSL_USER_CURRTIME /* for benchmark */
51 #define TFM_TIMING_RESISTANT
52 #define ECC_TIMING_RESISTANT
53 #define WC_RSA_BLINDING
54 
55 #define SINGLE_THREADED /* or define RTOS option */
56 #ifndef SINGLE_THREADED
57  /* expects use FRERRTOS */
58  #define FREERTOS
59 #endif
60 
61 /* #define NO_DH */
62 #define HAVE_AESGCM
63 #define WOLFSSL_SHA512
64 #define HAVE_ECC
65 #define HAVE_CURVE25519
66 #define CURVE25519_SMALL
67 #define HAVE_ED25519
68 
69 /* #define NO_WOLFSSL_STUB */
70 /* #define DEBUG_WOLFSSL */
71 /* TSIP TLS specific definitions */
72 #if !defined(WOLFSSL_RENESAS_TSIP)
73  #define OPENSSL_EXTRA
74  #define WOLFSSL_GENSEED_FORTEST /* Warning: define your own seed gen */
75 #else
76 #if defined(WOLFSSL_RENESAS_RX65N)
77  /* In the case of Static RSA and AES-CBC use */
78  #define HAVE_AES_CBC
79  /* TSIP ver 1.0.6 or lower supports only static RSA as Public-key cryptography. */
80  #define WOLFSSL_STATIC_RSA
81  /* for disabling TSIP CRYPT and TSIP TLS */
82  /* #define NO_RENESAS_TSIP_CRYPT */
83  /* for disabling only TSIP TLS-linked Common key encryption method */
84  /* #define NO_WOLFSSL_RENESAS_TSIP_TLS_SESSION */
85 #endif
86 #endif