-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathuser_settings.h
151 lines (129 loc) · 3.67 KB
/
user_settings.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
#ifndef _WIN_USER_SETTINGS_H_
#define _WIN_USER_SETTINGS_H_
/* Verify this is Windows */
#ifndef _WIN32
#error This user_settings.h header is only designed for Windows
#endif
#define USE_WOLFSSL_IO
#define HAVE_AESGCM
#define WOLFSSL_TLS13
#define HAVE_HKDF
#define HAVE_FFDHE_4096
#define WC_RSA_PSS
#define WOLFSSL_DTLS
#define WOLFSSL_DTLS13
#define WOLFSSL_SEND_HRR_COOKIE
#define WOLFSSL_DTLS_CID
/* npm */
#define NPM_WOLFCRYPT
#ifdef NPM_WOLFCRYPT
/* Optional debug */
/* #define DEBUG_WOLFSSL */
/* Optional RNG */
/* #define WC_RNG_SEED_CB */
#define HAVE_PKCS7
#define HAVE_AES_KEYWRAP
#define WOLFSSL_AES_DIRECT
#define HAVE_X963_KDF
#define WOLFSSL_SHA224
#define WOLFSSL_KEY_GEN
#define HAVE_ECC
#define ECC_MAX_BITS 521
#define WC_ECC256
#define WC_ECC384
#define WC_ECC521
#define HAVE_ECC_ENCRYPT
#define WOLFSSL_UINT128_T_DEFINED
#define WOLFSSL_SHA512
#define WOLFSSL_SHA384
#define WOLFSSL_SHA3
#define NO_OLD_RNGNAME
#define TFM_TIMING_RESISTANT
#define ECC_TIMING_RESISTANT
#define WC_RSA_BLINDING
#define TFM_ECC256
#define ECC_SHAMIR
#define ECC_MIN_KEY_SZ 224
#define HAVE_ECC_BRAINPOOL
#define HAVE_CURVE25519
#define FP_ECC
#define HAVE_ECC_ENCRYPT
#define WOLFCRYPT_HAVE_ECCSI
#define WOLFSSL_CUSTOM_CURVES
#endif
/* Configurations */
#if defined(HAVE_FIPS)
/* FIPS */
#define OPENSSL_EXTRA
#define HAVE_THREAD_LS
#define WOLFSSL_KEY_GEN
#define HAVE_HASHDRBG
#define WOLFSSL_SHA384
#define WOLFSSL_SHA512
#define NO_PSK
#define NO_RC4
#define NO_DSA
#define NO_MD4
#define GCM_NONCE_MID_SZ 12
#else
/* Enables blinding mode, to prevent timing attacks */
#define WC_RSA_BLINDING
#define NO_MULTIBYTE_PRINT
#define HAVE_CRL
#define HAVE_CRL_MONITOR
#if defined(WOLFSSL_LIB)
/* The lib */
#define OPENSSL_EXTRA
#define WOLFSSL_RIPEMD
#define NO_PSK
#define HAVE_EXTENDED_MASTER
#define WOLFSSL_SNIFFER
#define HAVE_SECURE_RENEGOTIATION
#define HAVE_AESGCM
#define WOLFSSL_AESGCM_STREAM
#define WOLFSSL_SHA384
#define WOLFSSL_SHA512
#define HAVE_SUPPORTED_CURVES
#define HAVE_TLS_EXTENSIONS
#define HAVE_ECC
#define ECC_SHAMIR
#define ECC_TIMING_RESISTANT
#define WOLFSSL_SP_X86_64
#define SP_INT_BITS 4096
/* Optional Performance Speedups */
#if 0
/* AESNI on x64 */
#ifdef _WIN64
#define HAVE_INTEL_RDSEED
#define WOLFSSL_AESNI
#define HAVE_INTEL_AVX1
#if 0
#define HAVE_INTEL_AVX2
#endif
#define USE_INTEL_CHACHA_SPEEDUP
#define USE_INTEL_POLY1305_SPEEDUP
#endif
/* Single Precision Support for RSA/DH 1024/2048/3072 and
* ECC P-256/P-384 */
#define WOLFSSL_SP
#define WOLFSSL_HAVE_SP_ECC
#define WOLFSSL_HAVE_SP_DH
#define WOLFSSL_HAVE_SP_RSA
#ifdef _WIN64
/* Old versions of MASM compiler do not recognize newer
* instructions. */
#if 0
#define NO_AVX2_SUPPORT
#define NO_MOVBE_SUPPORT
#endif
#define WOLFSSL_SP_ASM
#define WOLFSSL_SP_X86_64_ASM
#endif
#endif
#else
/* The servers and clients */
#define OPENSSL_EXTRA
#define NO_PSK
#endif
#endif /* HAVE_FIPS */
#endif /* _WIN_USER_SETTINGS_H_ */