File: user_settings.h

package info (click to toggle)
wolfssl 5.8.4-1
  • links: PTS
  • area: main
  • in suites: forky, sid
  • size: 117,604 kB
  • sloc: ansic: 1,584,954; asm: 481,206; sh: 11,586; cs: 6,596; xml: 3,878; perl: 3,291; makefile: 2,058; ada: 1,891; javascript: 748; python: 636; cpp: 131; ruby: 118; objc: 80; tcl: 73
file content (140 lines) | stat: -rw-r--r-- 3,311 bytes parent folder | download
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
/* user_settings.h
 *
 * Copyright (C) 2006-2025 wolfSSL Inc.
 *
 * This file is part of wolfSSL.
 *
 * wolfSSL is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 3 of the License, or
 * (at your option) any later version.
 *
 * wolfSSL is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
 */

/* These are the build settings used by the Visual Studio CSharp wrapper */

#ifndef _WIN_CSHARP_USER_SETTINGS_H_
#define _WIN_CSHARP_USER_SETTINGS_H_

/* Features */
#define NO_OLD_TLS
#define WOLFSSL_TLS13
#define WOLFSSL_DTLS
#define WOLFSSL_DTLS13
#define WOLFSSL_SEND_HRR_COOKIE
#define WOLFSSL_DTLS_CID
#define HAVE_EXTENDED_MASTER
#define HAVE_SECURE_RENEGOTIATION
#define HAVE_SUPPORTED_CURVES
#define HAVE_TLS_EXTENSIONS
#define WOLFSSL_CERT_EXT
#define WOLFSSL_CERT_REQ
#define WOLFSSL_CERT_GEN
#define HAVE_ENCRYPT_THEN_MAC
#define HAVE_ECC_ENCRYPT
#define WOLFSSL_PUBLIC_MP
#define NO_MULTIBYTE_PRINT
#define WOLFSSL_KEY_GEN /* RSA key gen */
#define WOLFSSL_ASN_TEMPLATE /* default */
#define WOLFSSL_SHA3
#define HAVE_SNI

#if 0
    #define OPENSSL_EXTRA
#endif

#define HAVE_CRL
#if 0
    /* start thread that can monitor CRL directory */
    #define HAVE_CRL_MONITOR
#endif

/* Algorithms */
#define HAVE_ED25519
#define HAVE_CURVE25519

/* C# wrapper has ephemeral RNG when creating curve25519 key */
#define NO_CURVE25519_BLINDING

#define HAVE_AESGCM
#define WOLFSSL_AESGCM_STREAM
#define WOLFSSL_SHA384
#define WOLFSSL_SHA512

#define HAVE_HKDF

#undef  NO_DH
#define HAVE_PUBLIC_FFDHE
#define HAVE_FFDHE_2048
#define HAVE_FFDHE_4096

#undef  NO_RSA
#define WC_RSA_PSS
#define WOLFSSL_PSS_LONG_SALT
#define WC_RSA_BLINDING

#define HAVE_ECC
#define ECC_SHAMIR
#define ECC_TIMING_RESISTANT
#define HAVE_COMP_KEY

/* Disable features */
#define NO_PSK

/* Disable Algorithms */
#define NO_DES3
#define NO_DSA
#define NO_RC4
#define NO_MD4
#define NO_MD5
#define NO_SHA

/* Math */

/* Single Precision Support for RSA/DH 1024/2048/3072 and
 * ECC P-256/P-384 */
#define WOLFSSL_HAVE_SP_ECC
#define WOLFSSL_HAVE_SP_DH
#define WOLFSSL_HAVE_SP_RSA

/* Optional Performance Speedups */
#if 0
    #ifdef _WIN64
        /* Assembly speedups for SP math */
        #define WOLFSSL_SP_X86_64_ASM

        /* Support for RDSEED instruction */
        #define HAVE_INTEL_RDSEED

        /* AESNI on x64 */
        #define WOLFSSL_AESNI

        /* Intel ASM */
        #define USE_INTEL_SPEEDUP
        #define WOLFSSL_X86_64_BUILD

        /* Old versions of MASM compiler do not recognize newer
         * instructions. */
        #if 0
            #define NO_AVX2_SUPPORT
            #define NO_MOVBE_SUPPORT
        #endif
    #endif
#endif

/* Debug logging */
#if 1
    #define DEBUG_WOLFSSL
#else
    /* #define NO_ERROR_STRINGS */
#endif

#endif /* !_WIN_CSHARP_USER_SETTINGS_H_ */