Skip to content

Commit dc6738e

Browse files
authored
Merge branch 'curl:master' into master
2 parents e4dc16c + fef3185 commit dc6738e

39 files changed

Lines changed: 549 additions & 10292 deletions

.github/CONTRIBUTING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ Join the community
1414

1515
2. Subscribe to the suitable [mailing lists](https://curl.se/mail/)
1616

17-
Read [CONTRIBUTE](../docs/CONTRIBUTE.md)
17+
Read [CONTRIBUTE](/docs/CONTRIBUTE.md)
1818
---------------------------------------
1919

2020
Send your suggestions using one of these methods:

.github/scripts/spacecheck.pl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
"^m4/zz40-xc-ovr.m4",
3131
"Makefile\\.(am|example)\$",
3232
"/mkfile",
33-
"\\.(bat|sln|vc)\$",
33+
"\\.(sln|vc)\$",
3434
"^tests/data/test",
3535
);
3636

.github/workflows/linux.yml

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,8 @@ env:
5151
MBEDTLS_VERSION: 3.6.4
5252
# renovate: datasource=github-tags depName=awslabs/aws-lc versioning=semver registryUrl=https://github.com
5353
AWSLC_VERSION: 1.58.0
54+
# renovate: datasource=github-tags depName=google/boringssl versioning=semver registryUrl=https://github.com
55+
BORINGSSL_VERSION: 0.20250818.0
5456
# handled in renovate.json
5557
OPENSSL_VERSION: 3.5.2
5658
# handled in renovate.json
@@ -144,6 +146,11 @@ jobs:
144146
install_steps: awslc
145147
generate: -DOPENSSL_ROOT_DIR=/home/runner/awslc -DUSE_ECH=ON -DCMAKE_UNITY_BUILD=OFF
146148

149+
- name: 'boringssl'
150+
install_packages: zlib1g-dev
151+
install_steps: boringssl pytest
152+
generate: -DOPENSSL_ROOT_DIR=/home/runner/boringssl -DUSE_ECH=ON
153+
147154
- name: 'openssl default'
148155
install_steps: pytest
149156
configure: --with-openssl --enable-debug --disable-unity
@@ -518,6 +525,27 @@ jobs:
518525
cmake --build .
519526
cmake --install .
520527
528+
- name: 'cache boringssl'
529+
if: ${{ contains(matrix.build.install_steps, 'boringssl') }}
530+
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4
531+
id: cache-boringssl
532+
env:
533+
cache-name: cache-boringssl
534+
with:
535+
path: ~/boringssl
536+
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ env.BORINGSSL_VERSION }}
537+
538+
- name: 'build boringssl'
539+
if: ${{ contains(matrix.build.install_steps, 'boringssl') && steps.cache-boringssl.outputs.cache-hit != 'true' }}
540+
run: |
541+
mkdir boringssl-src
542+
cd boringssl-src
543+
curl --disable --fail --silent --show-error --connect-timeout 15 --max-time 120 --retry 6 --retry-connrefused \
544+
"https://boringssl.googlesource.com/boringssl/+archive/${BORINGSSL_VERSION}.tar.gz" | tar -xz
545+
cmake -B . -G Ninja -DCMAKE_INSTALL_PREFIX=/home/runner/boringssl -DBUILD_TESTING=OFF -DBUILD_SHARED_LIBS=ON
546+
cmake --build .
547+
cmake --install .
548+
521549
- name: 'cache rustls'
522550
if: ${{ contains(matrix.build.install_steps, 'rustls') }}
523551
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4

RELEASE-NOTES

Lines changed: 93 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ curl and libcurl 8.15.1
44
Command line options: 272
55
curl_easy_setopt() options: 308
66
Public functions in libcurl: 98
7-
Contributors: 3492
7+
Contributors: 3495
88

99
This release includes the following changes:
1010

@@ -29,9 +29,14 @@ This release includes the following changes:
2929
This release includes the following bugfixes:
3030

3131
o _PROTOCOLS.md: mention file:// is only for absolute paths [102]
32+
o acinclude: --with-ca-fallback only works with OpenSSL [217]
3233
o alpn: query filter [104]
3334
o ares: destroy channel on shutdown [178]
35+
o ares: use `ares_strerror()` to retrieve error messages [236]
36+
o asyn-thrdd: fix --disable-socketpair builds [235]
3437
o asyn-thrdd: fix Curl_async_pollset without socketpair [205]
38+
o asyn-thrdd: fix no `HAVE_GETADDRINFO` builds [214]
39+
o asyn-thrdd: manage DEFERRED and locks better [228]
3540
o BINDINGS.md: add LibQurl [156]
3641
o bufq: add integer overflow checks before chunk allocations [108]
3742
o bufq: removed "Useless Assignment" [188]
@@ -45,8 +50,10 @@ This release includes the following bugfixes:
4550
o build: fix mingw-w64 version guard for mingw32ce [124]
4651
o build: if no perl, fix to use the pre-built hugehelp, if present [144]
4752
o build: link to Apple frameworks required by static wolfSSL [40]
53+
o build: support LibreSSL native crypto lib with ngtcp2 1.15.0+ [209]
4854
o build: tidy up compiler definition for tests [37]
4955
o cf-https-connect: delete unused declaration [15]
56+
o cmake: `CURL_CA_FALLBACK` only works with OpenSSL [215]
5057
o cmake: capitalize 'Rustls' in the config summary
5158
o cmake: defer building `unitprotos.h` till a test target needs it [75]
5259
o cmake: define `WIN32_LEAN_AND_MEAN` for examples [159]
@@ -66,6 +73,7 @@ This release includes the following bugfixes:
6673
o CODE_STYLE: sync with recent `checksrc.pl` updates [49]
6774
o config-win32.h: do not use winsock2 `inet_ntop()`/`inet_pton()` [58]
6875
o configure: if no perl, disable unity and shell completion, related tidy ups [137]
76+
o configure: tidy up internal names in ngtcp2 ossl detection logic [212]
6977
o connectdata: remove primary+secondary ip_quadruple [126]
7078
o connection: terminate after goaway [62]
7179
o contrithanks: fix for BSD `sed` tool [98]
@@ -101,14 +109,18 @@ This release includes the following bugfixes:
101109
o DISTROS.md: add Haiku [39]
102110
o docs/cmdline-opts: the auth types are not mutually exclusive [103]
103111
o docs: add CURLOPT type change history, drop casts where present [143]
112+
o docs: fix link CONTRIBUTE.md link [192]
104113
o docs: fix name in curl_easy_ssls_export man page [12]
114+
o docs: point two broken links to archive.org [134]
105115
o doh: rename symbols to avoid collision with mingw-w64 headers [66]
106116
o easy handle: check validity on external calls [28]
107117
o examples: drop long cast for `CURLALTSVC_*`
118+
o examples: make `CURLPIPE_MULTIPLEX` fallback `long` [233]
108119
o examples: remove base64 encoded chunks from examples [189]
109120
o examples: remove href_extractor.c [186]
110121
o ftp: store dir components as start+len instead of memdup'ing [198]
111122
o ftp: use 'conn' instead of 'data->conn' [208]
123+
o gnutls: fix building with older supported GnuTLS versions [241]
112124
o gnutls: some small cleanups [41]
113125
o hmac: return error if init fails [2]
114126
o hostip: do DNS cache pruning in milliseconds [132]
@@ -125,6 +137,7 @@ This release includes the following bugfixes:
125137
o libtests: use `FMT_SOCKET_T`, drop more casts [136]
126138
o managen: reset text mode at end of table marker [145]
127139
o mbedtls: check for feature macros instead of version [166]
140+
o mdlinkcheck: handle links with a leading slash properly [195]
128141
o memanalyze: fix warnings [22]
129142
o memory: make function overrides work reliably in unity builds [93]
130143
o multi event: remove only announced [25]
@@ -136,27 +149,44 @@ This release includes the following bugfixes:
136149
o multissl: initialize when requesting a random number [30]
137150
o ngtcp2: extend callback tables for nghttp3 1.11.0 and ngtcp2 1.14.0 [47]
138151
o ngtcp2: use custom mem funcs [204]
152+
o openssl: add and use `HAVE_BORINGSSL_LIKE` internal macro [222]
153+
o openssl: add and use `HAVE_OPENSSL3` internal macro [223]
154+
o openssl: assume `OPENSSL_VERSION_NUMBER` [181]
139155
o openssl: auto-pause on verify callback retry [167]
140156
o openssl: check SSL_write() length on retries [152]
141157
o openssl: clear errors after a failed `d2i_X509()` [161]
158+
o openssl: drop more legacy cruft [224]
159+
o openssl: drop redundant `HAVE_OPENSSL_VERSION` macro [221]
160+
o openssl: drop redundant version check [246]
161+
o openssl: drop single-use interim macro `USE_OPENSSL_SRP` [201]
162+
o openssl: enable `HAVE_KEYLOG_CALLBACK` for AWS-LC [220]
163+
o openssl: merge two `#if` blocks [218]
142164
o openssl: output unescaped utf8 x509 issuer/subject DNs [169]
165+
o openssl: remove legacy cruft, document macro guards [231]
143166
o openssl: save and restore OpenSSL error queue in two functions [172]
144167
o openssl: some small cleanups [42]
145168
o openssl: split cert_stuff into smaller sub functions [72]
169+
o openssl: sync an AWS-LC guard with BoringSSL [199]
170+
o openssl: use `RSA_flags()` again with BoringSSL [219]
146171
o parallel-max: bump the max value to 65535 [86]
147172
o processhelp.pm: fix to use the correct null device on Windows [164]
148173
o processhelp.pm: use `Win32::Process*` perl modules if available [200]
174+
o projects: drop unused logic from `generate.bat` [157]
149175
o pytest: add SOCKS tests and scoring [9]
176+
o pytest: fix test_17_09_ssl_min_max for BoringSSL [197]
150177
o pytest: increase server KeepAliveTimeout [26]
151178
o pytest: relax error check on test_07_22 [16]
152179
o resolving: dns error tracing [196]
153180
o runtests: assume `Time::HiRes`, drop Perl Win32 dependency [163]
181+
o runtests: replace `--ci` with `--buidinfo`, show OS/Perl version again [247]
182+
o runtests: show still running tests when nothing has happened for a while [227]
154183
o schannel: add an error message for client cert not found [165]
155184
o schannel: assume `CERT_CHAIN_REVOCATION_CHECK_CHAIN` [114]
156185
o schannel: drop fallbacks for 4 macros [121]
157186
o schannel: drop fallbacks for unused `BCRYPT_*` macros [122]
158187
o schannel: drop old-mingw special case [77]
159188
o schannel: fix recent update for mingw32ce [123]
189+
o schannel: improve handshake procedure [239]
160190
o schannel: not supported with UWP, drop redundant code [105]
161191
o schannel: use if(result) like the code style says [125]
162192
o scripts: enable strict warnings in Perl where missing, fix fallouts [63]
@@ -167,33 +197,41 @@ This release includes the following bugfixes:
167197
o setopt: split out cookielist() and cookiefile() [130]
168198
o socks: do_SOCKS5: Fix invalid buffer content on short send [43]
169199
o spacecheck.pl: when detecting unicode, mention line number [85]
200+
o spelling: file system [232]
170201
o test1148: drop redundant `LC_NUMBER=` env setting [13]
202+
o test1557: pass `long` type to `multi_setopt()` [234]
171203
o test1560: set locale/codeset with `LC_ALL` (was: `LANG`), test in CI [19]
172204
o test1560: skip some URLs if UTF-8 is not supported [34]
173205
o test1: raise alloc limits [11]
174206
o test428: re-enable for Windows [5]
175207
o test436: fix running on Windows with `_curlrc` present [153]
208+
o test: add `cygwin` feature and use it (test 1056, 1517) [249]
176209
o tests/ech_tests.sh: indent, if/for style, inline ifs [131]
177210
o tests: constify command-line arguments [82]
178211
o tests: delete unused commands [177]
212+
o tests: drop unused `BLANK` envs, unset `CURL_NOT_SET` [248]
179213
o tests: drop unused `CURL_FORCEHOST` envs [36]
180214
o tests: fix perl warnings in http2-server, http3-server [119]
181215
o tests: fix prechecks to call the bundle libtest tool [120]
182216
o tests: fix UTF-8 detection, per-test `LC_*` settings, CI coverage [6]
183217
o tests: merge clients into libtests, drop duplicate code [76]
184218
o tests: set `CURL_ENTROPY` per test, not globally [35]
185219
o tests: unset some envs instead of blanking them [4]
220+
o threaded-resolver: fix shutdown [252]
186221
o tidy-up: `Curl_thread_create()` callback return type [20]
187222
o tidy-up: move literal to the right side of comparisons [65]
188223
o tidy-up: prefer `ifdef`/`ifndef` for single checks [64]
189224
o tls: CURLINFO_TLS_SSL_PTR testing [79]
190225
o TODO: remove session export item [194]
226+
o TODO: remove the expand ~ idea [216]
191227
o tool_cb_wrt: stop alloc/free for every chunk windows console output [140]
192228
o tool_operate: avoid superfluous strdup'ing output [1]
229+
o tool_operate: use stricter curl_multi_setopt() arguments [225]
193230
o tool_operate: use the correct config pointer [115]
194231
o tool_paramhlp: fix secs2ms() [116]
195232
o tool_parsecfg: use dynbuf for quoted arguments [162]
196233
o tool_urlglob: polish, cleanups, improvements [141]
234+
o typecheck-gcc: add type checks for curl_multi_setopt() [226]
197235
o unit-tests: build the unitprotos.h from here [73]
198236
o unit2604: avoid `UNCONST()` [135]
199237
o URL-SYNTAX.md: drop link to codepoints.net to pass linkcheck [190]
@@ -202,6 +240,7 @@ This release includes the following bugfixes:
202240
o vquic-tls: fix SSL backend type for QUIC connections using gnutls [29]
203241
o vquic: use curl_getenv [168]
204242
o vtls: set seen http version on successful ALPN [160]
243+
o websocket example: cast print values to unsigned int [251]
205244
o windows: assume `ADDRESS_FAMILY`, drop feature checks [88]
206245
o windows: document toolchain support for `CERT_NAME_SEARCH_ALL_NAMES_FLAG`
207246
o windows: document toolchain support for some macros (cont.) [111]
@@ -235,20 +274,20 @@ This release would not have looked like this without help, code, reports and
235274
advice from friends like these:
236275

237276
adamse on github, Ahmad Gani, Alice Lee Poetics, Ammar Faizi, Anthony Hu,
238-
Berthin Torres Callañaupa, Caolán McNamara, Cole Leavitt, d1r3ct0r,
239-
Dan Fandrich, Daniel Böhmer, Daniel Engberg, Daniel Stenberg, David Zhuang,
240-
devgs on github, Dominik Tomecki, Eshan Kelkar, Gabriel Marin,
241-
Google Big Sleep, Harry Sintonen, IoannisGS on github, Jelle Raaijmakers,
242-
Jeroen Ooms, Kai Pastor, Karthik Das, kkmuffme on github,
243-
kupavcevdenis on github, letshack9707 on hackerone, lf- on github,
244-
LoRd_MuldeR, Marcel Raad, Michał Petryka, Natris on github,
245-
nevakrien on github, Oxan van Leeuwen, Paul Gilmartin, Petar Popovic,
246-
Philippe Antoine, Pino Toscano, Qriist, Qriist on github, Ray Satiro,
247-
renovate[bot], rm-rmonaghan on github, Roberto Hidalgo, Samuel Henrique,
248-
Schrijvers Luc, Sergio Durigan Junior, Stefan Eissing, sunriseL, Tal Regev,
249-
Todd Gamblin, Viktor Szakats, Waldemar Kornewald, xfangfang, yaoy6 on github,
250-
ウさん
251-
(57 contributors)
277+
Berthin Torres Callañaupa, BobodevMm on github, Caolán McNamara,
278+
Cole Leavitt, d1r3ct0r, Dan Fandrich, Daniel Böhmer, Daniel Engberg,
279+
Daniel Stenberg, David Zhuang, devgs on github, Dominik Tomecki,
280+
Eshan Kelkar, Gabriel Marin, Gisle Vanem, Google Big Sleep, Harry Sintonen,
281+
IoannisGS on github, Jelle Raaijmakers, Jeroen Ooms, Kai Pastor, Karthik Das,
282+
kkmuffme on github, kupavcevdenis on github, letshack9707 on hackerone,
283+
lf- on github, LoRd_MuldeR, Marcel Raad, Michael Osipov, Michał Petryka,
284+
Natris on github, nevakrien on github, Oxan van Leeuwen, Paul Gilmartin,
285+
Petar Popovic, Philippe Antoine, Pino Toscano, Qriist, Qriist on github,
286+
Ray Satiro, renovate[bot], rm-rmonaghan on github, Roberto Hidalgo,
287+
Samuel Henrique, Schrijvers Luc, Sergio Durigan Junior, Simon Dalvai,
288+
Stanislav Osipov, Stefan Eissing, sunriseL, Tal Regev, Todd Gamblin,
289+
Viktor Szakats, Waldemar Kornewald, xfangfang, yaoy6 on github, ウさん
290+
(62 contributors)
252291

253292
References to bug reports and discussions on issues:
254293

@@ -385,6 +424,7 @@ References to bug reports and discussions on issues:
385424
[131] = https://curl.se/bug/?i=18187
386425
[132] = https://curl.se/bug/?i=18160
387426
[133] = https://curl.se/bug/?i=18201
427+
[134] = https://curl.se/bug/?i=18393
388428
[135] = https://curl.se/bug/?i=18143
389429
[136] = https://curl.se/bug/?i=18142
390430
[137] = https://curl.se/bug/?i=18141
@@ -407,6 +447,7 @@ References to bug reports and discussions on issues:
407447
[154] = https://curl.se/bug/?i=18241
408448
[155] = https://curl.se/bug/?i=18238
409449
[156] = https://curl.se/bug/?i=18195
450+
[157] = https://curl.se/bug/?i=18397
410451
[158] = https://curl.se/bug/?i=18299
411452
[159] = https://curl.se/bug/?i=18232
412453
[160] = https://curl.se/bug/?i=18177
@@ -430,6 +471,7 @@ References to bug reports and discussions on issues:
430471
[178] = https://curl.se/bug/?i=18216
431472
[179] = https://curl.se/bug/?i=18272
432473
[180] = https://curl.se/bug/?i=18254
474+
[181] = https://curl.se/bug/?i=18388
433475
[183] = https://curl.se/bug/?i=18208
434476
[184] = https://curl.se/bug/?i=18206
435477
[185] = https://curl.se/bug/?i=18266
@@ -438,13 +480,49 @@ References to bug reports and discussions on issues:
438480
[188] = https://curl.se/bug/?i=18322
439481
[189] = https://curl.se/bug/?i=18260
440482
[190] = https://curl.se/bug/?i=18259
483+
[192] = https://curl.se/bug/?i=18372
441484
[193] = https://curl.se/bug/?i=17683
442485
[194] = https://curl.se/bug/?i=18243
486+
[195] = https://curl.se/bug/?i=18382
443487
[196] = https://curl.se/bug/?i=18247
488+
[197] = https://curl.se/bug/?i=18385
444489
[198] = https://curl.se/bug/?i=18312
490+
[199] = https://curl.se/bug/?i=18384
445491
[200] = https://curl.se/bug/?i=18308
492+
[201] = https://curl.se/bug/?i=18383
446493
[204] = https://curl.se/bug/?i=18196
447494
[205] = https://curl.se/bug/?i=18306
448495
[206] = https://curl.se/bug/?i=18307
449496
[207] = https://curl.se/bug/?i=18305
450497
[208] = https://curl.se/bug/?i=18304
498+
[209] = https://curl.se/bug/?i=18377
499+
[212] = https://curl.se/bug/?i=18378
500+
[214] = https://curl.se/bug/?i=18371
501+
[215] = https://curl.se/bug/?i=18365
502+
[216] = https://curl.se/bug/?i=18363
503+
[217] = https://curl.se/bug/?i=18362
504+
[218] = https://curl.se/bug/?i=18370
505+
[219] = https://curl.se/bug/?i=18369
506+
[220] = https://curl.se/bug/?i=18368
507+
[221] = https://curl.se/bug/?i=18367
508+
[222] = https://curl.se/bug/?i=18358
509+
[223] = https://curl.se/bug/?i=18360
510+
[224] = https://curl.se/bug/?i=18359
511+
[225] = https://curl.se/bug/?i=18357
512+
[226] = https://curl.se/bug/?i=18357
513+
[227] = https://curl.se/bug/?i=18349
514+
[228] = https://curl.se/bug/?i=18350
515+
[231] = https://curl.se/bug/?i=18351
516+
[232] = https://curl.se/bug/?i=18348
517+
[233] = https://curl.se/bug/?i=18356
518+
[234] = https://curl.se/bug/?i=18355
519+
[235] = https://curl.se/bug/?i=18347
520+
[236] = https://curl.se/bug/?i=18251
521+
[239] = https://curl.se/bug/?i=18323
522+
[241] = https://curl.se/bug/?i=18335
523+
[246] = https://curl.se/bug/?i=18333
524+
[247] = https://curl.se/bug/?i=18329
525+
[248] = https://curl.se/bug/?i=18328
526+
[249] = https://curl.se/bug/?i=18327
527+
[251] = https://curl.se/bug/?i=18326
528+
[252] = https://curl.se/bug/?i=18263

docs/FAQ

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1026,7 +1026,7 @@ FAQ
10261026
timeout is set.
10271027

10281028
See option TcpMaxConnectRetransmissions on this page:
1029-
https://support.microsoft.com/en-us/kb/175523/en-us
1029+
https://web.archive.org/web/20160819015101/support.microsoft.com/en-us/kb/175523
10301030

10311031
Also, even on non-Windows systems there may run a firewall or anti-virus
10321032
software or similar that accepts the connection but does not actually do

lib/curl_ntlm_core.c

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -70,14 +70,10 @@
7070
# include <openssl/md5.h>
7171
# include <openssl/ssl.h>
7272
# include <openssl/rand.h>
73-
# ifdef OPENSSL_IS_AWSLC
73+
# ifdef OPENSSL_IS_AWSLC /* for versions 1.2.0 to 1.30.1 */
7474
# define DES_set_key_unchecked (void)DES_set_key
75-
# define DESKEYARG(x) *x
76-
# define DESKEY(x) &x
77-
# else
78-
# define DESKEYARG(x) *x
79-
# define DESKEY(x) &x
8075
# endif
76+
# define DESKEY(x) &x
8177
#else
8278
# include <wolfssl/openssl/des.h>
8379
# include <wolfssl/openssl/md5.h>
@@ -91,12 +87,11 @@
9187
# define DES_set_key_unchecked wolfSSL_DES_set_key_unchecked
9288
# define DES_ecb_encrypt wolfSSL_DES_ecb_encrypt
9389
# define DESKEY(x) ((WOLFSSL_DES_key_schedule *)(x))
94-
# define DESKEYARG(x) *x
9590
# else
96-
# define DESKEYARG(x) *x
9791
# define DESKEY(x) &x
9892
# endif
9993
#endif
94+
#define DESKEYARG(x) *x
10095

10196
#elif defined(USE_GNUTLS)
10297

lib/curl_sha512_256.c

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,10 +41,9 @@
4141
#ifdef USE_OPENSSL
4242
# include <openssl/opensslv.h>
4343
# if (!defined(LIBRESSL_VERSION_NUMBER) && \
44-
defined(OPENSSL_VERSION_NUMBER) && \
45-
(OPENSSL_VERSION_NUMBER >= 0x10101000L)) || \
44+
OPENSSL_VERSION_NUMBER >= 0x10101000L) || \
4645
(defined(LIBRESSL_VERSION_NUMBER) && \
47-
(LIBRESSL_VERSION_NUMBER >= 0x3080000fL))
46+
LIBRESSL_VERSION_NUMBER >= 0x3080000fL)
4847
# include <openssl/opensslconf.h>
4948
# if !defined(OPENSSL_NO_SHA) && !defined(OPENSSL_NO_SHA512)
5049
# include <openssl/evp.h>

0 commit comments

Comments
 (0)