Skip to content

Commit 603f217

Browse files
authored
Merge pull request #191 from expressvpn/enable-wolf-single-thread-opt
Enable wolf single thread opt
2 parents 9e867a4 + b7d53cd commit 603f217

14 files changed

+252
-663
lines changed

3rd_party_deps.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
--enable-dtls-frag-ch
1717
--enable-dtls-mtu
1818
--enable-secure-renegotiation
19-
--disable-singlethreaded
19+
--enable-singlethreaded
2020
--enable-sni
2121
--enable-sp=yes,4096
2222
--enable-static

linux.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
:build:
2121
- git apply ../../wolfssl/*.patch
2222
- "autoreconf -i"
23-
- "./configure $HE_WOLFSSL_CONF_FLAGS --prefix=$(pwd)/../builds/wolfssl_build --enable-aesni --enable-sp-asm --enable-intelasm"
23+
- "./configure $HE_WOLFSSL_CONF_FLAGS $HE_WOLFSSL_ADDL_CONF_FLAGS --prefix=$(pwd)/../builds/wolfssl_build --enable-aesni --enable-sp-asm --enable-intelasm"
2424
- "make"
2525
- "make install"
2626
:artifacts:

linux_multithread.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,3 +10,6 @@
1010
:arguments:
1111
- -latomic
1212

13+
:environment:
14+
- :HE_WOLFSSL_ADDL_CONF_FLAGS: >-
15+
--disable-singlethreaded

windows.yml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,15 +10,13 @@
1010
- HAVE_SECURE_RENEGOTIATION
1111
- WOLFSSL_DTLS_CH_FRAG
1212
- WOLFSSL_TLS13_MIDDLEBOX_COMPAT
13-
- WOLFSSL_RW_THREADED
1413
:test_preprocess:
1514
- WOLFSSL_USER_SETTINGS
1615
- WOLFSSL_MIN_RSA_BITS=2048
1716
- WOLFSSL_MIN_ECC_BITS=256
1817
- HAVE_SECURE_RENEGOTIATION
1918
- WOLFSSL_DTLS_CH_FRAG
2019
- WOLFSSL_TLS_MIDDLEBOX_COMPAT
21-
- WOLFSSL_RW_THREADED
2220
#- USE_WINDOWS_API # avoids use of unistd.h
2321
:release:
2422
- WOLFSSL_USER_SETTINGS
@@ -27,7 +25,6 @@
2725
- HAVE_SECURE_RENEGOTIATION
2826
- WOLFSSL_DTLS_CH_FRAG
2927
- WOLFSSL_TLS13_MIDDLEBOX_COMPAT
30-
- WOLFSSL_RW_THREADED
3128

3229
:libraries:
3330
:path_flag: /LIBPATH:${1}

windows/wolfssl-user_settings-32.h

Lines changed: 0 additions & 214 deletions
Original file line numberDiff line numberDiff line change
@@ -1,226 +1,12 @@
11
#ifndef _WIN_USER_SETTINGS_H_
22
#define _WIN_USER_SETTINGS_H_
33

4-
/* Verify this is Windows */
5-
#ifndef _WIN32
6-
#error This user_settings.h header is only designed for Windows
7-
#endif
8-
9-
/* Check HAVE_SECURE_RENEGOTIATION */
10-
#ifndef HAVE_SECURE_RENEGOTIATION
11-
#error HAVE_SECURE_RENEGOTIATION is not defined
12-
#endif
13-
14-
/* Configurations */
15-
#undef USE_WINDOWS_API
16-
#define USE_WINDOWS_API
17-
18-
#undef WOLFSSL_TLS13
19-
#define WOLFSSL_TLS13
20-
21-
#undef HAVE_TLS_EXTENSIONS
22-
#define HAVE_TLS_EXTENSIONS
23-
24-
#undef HAVE_SUPPORTED_CURVES
25-
#define HAVE_SUPPORTED_CURVES
26-
27-
#undef WOLFSSL_DTLS_MTU
28-
#define WOLFSSL_DTLS_MTU
29-
30-
#undef WOLFSSL_DTLS
31-
#define WOLFSSL_DTLS
32-
33-
#undef WOLFSSL_DTLS13
34-
#define WOLFSSL_DTLS13
35-
36-
#undef WOLFSSL_SEND_HRR_COOKIE
37-
#define WOLFSSL_SEND_HRR_COOKIE
38-
39-
#undef SINGLE_THREADED
40-
41-
#undef HAVE_THREAD_LS
42-
#define HAVE_THREAD_LS
43-
44-
#undef TFM_TIMING_RESISTANT
45-
#define TFM_TIMING_RESISTANT
46-
47-
#undef ECC_TIMING_RESISTANT
48-
#define ECC_TIMING_RESISTANT
49-
50-
#undef WC_RSA_BLINDING
51-
#define WC_RSA_BLINDING
52-
53-
#undef HAVE_AESGCM
54-
#define HAVE_AESGCM
55-
564
#undef WOLFSSL_AESNI
57-
// #define WOLFSSL_AESNI // Only works with 64-bit builds
585

596
#undef HAVE_INTEL_RDSEED
60-
// #define HAVE_INTEL_RDSEED // Depends on IS_INTEL_RDSEED
617

628
#undef USE_INTEL_SPEEDUP
63-
// #define USE_INTEL_SPEEDUP // Depends on 64-bit only assembly
64-
65-
#undef WOLFSSL_SHA512
66-
#define WOLFSSL_SHA512
67-
68-
#undef WOLFSSL_SHA384
69-
#define WOLFSSL_SHA384
70-
71-
#undef HAVE_HKDF
72-
#define HAVE_HKDF
73-
74-
#undef NO_DSA
75-
#define NO_DSA
76-
77-
#undef HAVE_ECC
78-
#define HAVE_ECC
79-
80-
#undef TFM_ECC256
81-
#define TFM_ECC256
82-
83-
#undef ECC_SHAMIR
84-
#define ECC_SHAMIR
85-
86-
#undef HAVE_CURVE25519
87-
#define HAVE_CURVE25519
88-
89-
#undef NO_OLD_TLS
90-
#define NO_OLD_TLS
91-
92-
#undef WC_RSA_PSS
93-
#define WC_RSA_PSS
94-
95-
#undef NO_DH
96-
#define NO_DH
97-
98-
#undef WOLFSSL_BASE64_ENCODE
99-
#define WOLFSSL_BASE64_ENCODE
100-
101-
#undef NO_RC4
102-
#define NO_RC4
103-
104-
#undef NO_HC128
105-
#define NO_HC128
106-
107-
#undef NO_RABBIT
108-
#define NO_RABBIT
109-
110-
#undef WOLFSSL_SHA224
111-
#define WOLFSSL_SHA224
112-
113-
#undef HAVE_POLY1305
114-
#define HAVE_POLY1305
115-
116-
#undef HAVE_ONE_TIME_AUTH
117-
#define HAVE_ONE_TIME_AUTH
118-
119-
#undef HAVE_CHACHA
120-
#define HAVE_CHACHA
121-
122-
#undef HAVE_HASHDRBG
123-
#define HAVE_HASHDRBG
124-
125-
#undef HAVE_SNI
126-
#define HAVE_SNI
127-
128-
#undef HAVE_SUPPORTED_CURVES
129-
#define HAVE_SUPPORTED_CURVES
130-
131-
#undef HAVE_EXTENDED_MASTER
132-
#define HAVE_EXTENDED_MASTER
133-
134-
#undef WOLFCRYPT_HAVE_SRP
135-
#define WOLFCRYPT_HAVE_SRP
136-
137-
#undef NO_RC4
138-
#define NO_RC4
139-
140-
#undef HAVE_ENCRYPT_THEN_MAC
141-
#define HAVE_ENCRYPT_THEN_MAC
142-
143-
#undef NO_PSK
144-
#define NO_PSK
145-
146-
#undef NO_MD4
147-
#define NO_MD4
148-
149-
#undef NO_PWDBASED
150-
#define NO_PWDBASED
151-
152-
#undef USE_FAST_MATH
153-
#define USE_FAST_MATH
1549

15510
#undef WOLFSSL_X86_64_BUILD
156-
// #define WOLFSSL_X86_64_BUILD
157-
158-
#undef WOLFSSL_HAVE_SP_RSA
159-
#define WOLFSSL_HAVE_SP_RSA
160-
161-
#undef WOLFSSL_SP_4096
162-
#define WOLFSSL_SP_4096
163-
164-
#undef WOLFSSL_HAVE_SP_ECC
165-
#define WOLFSSL_HAVE_SP_ECC
166-
167-
#undef HAVE_ECC384
168-
#define HAVE_ECC384
169-
170-
#undef WOLFSSL_SP_384
171-
#define WOLFSSL_SP_384
172-
173-
#undef WOLFSSL_SP_ASM
174-
// #define WOLFSSL_SP_ASM
175-
176-
#undef WOLFSSL_SP_X86_64_ASM
177-
// #define WOLFSSL_SP_X86_64_ASM
178-
179-
#undef WC_NO_ASYNC_THREADING
180-
#define WC_NO_ASYNC_THREADING
181-
182-
#undef HAVE_DH_DEFAULT_PARAMS
183-
#define HAVE_DH_DEFAULT_PARAMS
184-
185-
#undef NO_DES3
186-
#define NO_DES3
187-
188-
#undef WOLFSSL_SYS_CA_CERTS
189-
// #define WOLFSSL_SYS_CA_CERTS
190-
191-
#undef HAVE_LIBOQS
192-
// #define HAVE_LIBOQS
193-
194-
#undef WOLFSSL_NO_SPHINCS
195-
#define WOLFSSL_NO_SPHINCS
196-
197-
#undef WOLFSSL_EXPERIMENTAL_SETTINGS
198-
#define WOLFSSL_EXPERIMENTAL_SETTINGS
199-
200-
// Post-quantum settings
201-
#undef WOLFSSL_HAVE_KYBER
202-
#define WOLFSSL_HAVE_KYBER
203-
204-
#undef WOLFSSL_WC_KYBER
205-
#define WOLFSSL_WC_KYBER
206-
207-
#undef WOLFSSL_KYBER_ORIGINAL
208-
#define WOLFSSL_KYBER_ORIGINAL
209-
210-
#undef WOLFSSL_NO_ML_KEM
211-
// #define WOLFSSL_NO_ML_KEM
212-
213-
// Needed for using WolfSSL's Kyber implementation
214-
#undef WOLFSSL_SHA3
215-
#define WOLFSSL_SHA3
216-
217-
#undef WOLFSSL_SHAKE128
218-
#define WOLFSSL_SHAKE128
219-
220-
#undef WOLFSSL_SHAKE256
221-
#define WOLFSSL_SHAKE256
222-
223-
#undef WOLFSSL_RW_THREADED
224-
#define WOLFSSL_RW_THREADED
22511

22612
#endif /* _WIN_USER_SETTINGS_H_ */

0 commit comments

Comments
 (0)