user_settings.h
1 #ifndef _WIN_USER_SETTINGS_H_
2 #define _WIN_USER_SETTINGS_H_
3 
4 /* Verify this is Windows */
5 #ifndef _WIN32
6 #error This user_settings.h header is only designed for Windows
7 #endif
8 
9 /* Configurations */
10 #if defined(HAVE_FIPS)
11  /* FIPS */
12  #define OPENSSL_EXTRA
13  #define HAVE_THREAD_LS
14  #define WOLFSSL_KEY_GEN
15  #define HAVE_AESGCM
16  #define HAVE_HASHDRBG
17  #define WOLFSSL_SHA384
18  #define WOLFSSL_SHA512
19  #define NO_PSK
20  #define NO_HC128
21  #define NO_RC4
22  #define NO_RABBIT
23  #define NO_DSA
24  #define NO_MD4
25 
26  #define GCM_NONCE_MID_SZ 12
27 #else
28  /* Enables blinding mode, to prevent timing attacks */
29  #define WC_RSA_BLINDING
30  #define NO_MULTIBYTE_PRINT
31 
32  #if defined(WOLFSSL_LIB)
33  /* The lib */
34  #define OPENSSL_EXTRA
35  #define WOLFSSL_RIPEMD
36  #define WOLFSSL_SHA512
37  #define NO_PSK
38  #define HAVE_EXTENDED_MASTER
39  #define WOLFSSL_SNIFFER
40  #define HAVE_TLS_EXTENSIONS
41  #define HAVE_SECURE_RENEGOTIATION
42 
43  #define HAVE_AESGCM
44  #define WOLFSSL_SHA384
45  #define WOLFSSL_SHA512
46 
47  #define HAVE_SUPPORTED_CURVES
48  #define HAVE_TLS_EXTENSIONS
49 
50  #define HAVE_ECC
51  #define ECC_SHAMIR
52  #define ECC_TIMING_RESISTANT
53 
54  /* Optional Performance Speedups */
55  #if 0
56  /* AESNI on x64 */
57  #ifdef _WIN64
58  #define HAVE_INTEL_RDSEED
59  #define WOLFSSL_AESNI
60  #endif
61 
62  /* Single Precision Support for RSA/DH 1024/2048/3072 and ECC P-256 */
63  #define WOLFSSL_SP
64  #define WOLFSSL_HAVE_SP_ECC
65  #define WOLFSSL_HAVE_SP_DH
66  #define WOLFSSL_HAVE_SP_RSA
67  #endif
68 
69  #else
70  /* The servers and clients */
71  #define OPENSSL_EXTRA
72  #define NO_PSK
73  #endif
74 #endif /* HAVE_FIPS */
75 
76 #endif /* _WIN_USER_SETTINGS_H_ */