8ba22ffb | 04-Jul-2022 |
Viktor Szakats |
cmake: do not force Windows target versions The goal of this patch is to avoid CMake forcing specific Windows versions and rely on toolchain defaults or manual selection instead. Thi
cmake: do not force Windows target versions The goal of this patch is to avoid CMake forcing specific Windows versions and rely on toolchain defaults or manual selection instead. This gives back control to the user. This also brings CMake closer to how autotools and `Makefile.m32` behaves in this regard. - CMake had a setting `ENABLE_INET_PTON` defaulting to `ON`, which did nothing else than fixing the Windows build target to Vista. This also happened when the toolchain did not have Vista support (e.g. original MinGW), breaking such builds. In other environments it did not make a user-facing difference, because libcurl has its own pton() implementation, so it works well with or without Vista's inet_pton(). This patch drops this setting. inet_pton() is now used whenever building for Vista or newer, either when requested manually or by default with modern toolchains (e.g. mingw-w64). Older envs will fall back to curl's pton(). Ref: https://github.com/curl/curl/pull/9027#issuecomment-1164157604 Ref: https://github.com/curl/curl/pull/8997#issuecomment-1164344155 - When the user did no select a Windows target version manually, stop explicitly targeting Windows XP, and instead use the toolchain default. This may pose an issue with old toolchains defaulting to pre-XP targets. In such case you must manually target Windows XP via: `-DCURL_TARGET_WINDOWS_VERSION=0x0501` or `-DCMAKE_C_FLAGS=-D_WIN32_WINNT=0x0501` Reviewed-by: Jay Satiro Reviewed-by: Marcel Raad Closes #9046
show more ...
|
76172511 | 04-Jul-2022 |
Viktor Szakats |
windows: improve random source - Use the Windows API to seed the fallback random generator. This ensures to always have a random seed, even when libcurl is built with a vtls
windows: improve random source - Use the Windows API to seed the fallback random generator. This ensures to always have a random seed, even when libcurl is built with a vtls backend lacking a random generator API, such as rustls (experimental), GSKit and certain mbedTLS builds, or, when libcurl is built without a TLS backend. We reuse the Windows-specific random function from the Schannel backend. - Implement support for `BCryptGenRandom()` [1] on Windows, as a replacement for the deprecated `CryptGenRandom()` [2] function. It is used as the secure random generator for Schannel, and also to provide entropy for libcurl's fallback random generator. The new function is supported on Vista and newer via its `bcrypt.dll`. It is used automatically when building for supported versions. It also works in UWP apps (the old function did not). - Clear entropy buffer before calling the Windows random generator. This avoids using arbitrary application memory as entropy (with `CryptGenRandom()`) and makes sure to return in a predictable state when an API call fails. [1] https://docs.microsoft.com/windows/win32/api/bcrypt/nf-bcrypt-bcryptgenrandom [2] https://docs.microsoft.com/windows/win32/api/wincrypt/nf-wincrypt-cryptgenrandom Closes #9027
show more ...
|
e6f8445e | 13-Jun-2022 |
Daniel Stenberg |
setopt: add CURLOPT_PROTOCOLS_STR and CURLOPT_REDIR_PROTOCOLS_STR ... as replacements for deprecated CURLOPT_PROTOCOLS and CURLOPT_REDIR_PROTOCOLS as these new ones do not risk running i
setopt: add CURLOPT_PROTOCOLS_STR and CURLOPT_REDIR_PROTOCOLS_STR ... as replacements for deprecated CURLOPT_PROTOCOLS and CURLOPT_REDIR_PROTOCOLS as these new ones do not risk running into the 32 bit limit the old ones are facing. CURLINFO_PROTCOOL is now deprecated. The curl tool is updated to use the new options. Added test 1597 to verify the libcurl protocol parser. Closes #8992
show more ...
|
193215db | 04-Jul-2022 |
Daniel Stenberg |
digest: simplify a switch() to a simple if |
a44c9ba7 | 04-Jul-2022 |
Daniel Stenberg |
digest: provide a special bit for "sess" algos Also shortened the names and moved them to the .c file since they are private for this source file only. Also made them #defines instead of
digest: provide a special bit for "sess" algos Also shortened the names and moved them to the .c file since they are private for this source file only. Also made them #defines instead of enum. Closes #9079
show more ...
|
52e82217 | 03-Jul-2022 |
Thomas Weißschuh |
select: do not return fatal error on EINTR from poll() The same was done for select() in 5912da25 but poll() was missed. Bug: https://bugs.archlinux.org/task/75201 Reported-by:
select: do not return fatal error on EINTR from poll() The same was done for select() in 5912da25 but poll() was missed. Bug: https://bugs.archlinux.org/task/75201 Reported-by: Alexandre Bury (gyscos at archlinux) Ref: https://github.com/curl/curl/issues/8921 Ref: https://github.com/curl/curl/pull/8961 Ref: https://github.com/curl/curl/commit/5912da25#r77584294 Closes https://github.com/curl/curl/pull/9091
show more ...
|
e584b1c0 | 02-Jul-2022 |
Kai Pastor |
cmake: fix build for mingw cross compile - Change normaliz lib name to all lowercase. This is from a standing patch in vcpkg: Mingw has libnormaliz.a. For case-sensitive file sy
cmake: fix build for mingw cross compile - Change normaliz lib name to all lowercase. This is from a standing patch in vcpkg: Mingw has libnormaliz.a. For case-sensitive file systems (e.g. cross builds from Linux), the spelling must match exactly. Closes https://github.com/curl/curl/pull/9084
show more ...
|
bbffb8c2 | 01-Jul-2022 |
Jay Satiro |
easy_lock: fix build for mingw - Define SRWLOCK symbols missing in some mingw environments. Closes https://github.com/curl/curl/pull/8997 |
0defae2f | 01-Jul-2022 |
Daniel Stenberg |
tool_progress: avoid division by zero in parallel progress meter Reported-by: Brian Carpenter Fixes #9082 Closes #9083 |
4d4c2274 | 01-Jul-2022 |
Daniel Stenberg |
http_aws_sigv4.c: remove two unusued includes Closes #9080 |
a8e02881 | 01-Jul-2022 |
Daniel Stenberg |
.mailmap: additional edit Follow-up to 861e2a8aca6c7 so that Evgeny appears with the same in git logs even when using old email. |
804fb71b | 01-Jul-2022 |
Daniel Stenberg |
RELEASE-NOTES: synced bumped to 7.84.1 |
861e2a8a | 30-Jun-2022 |
Evgeny Grin (Karlson2k) |
.mailmap: updated |
5a11aa79 | 30-Jun-2022 |
Evgeny Grin (Karlson2k) |
THANKS: merged two entries for Evgeny Grin Also updated THANKS-filter file Closes #9076 |
28971bd4 | 30-Jun-2022 |
Jilayne Lovejoy |
lib/curl_path.c: add ISC to license expression THe text of the ISC license is in this file, so the SPDX license expression should be updated Closes #9073 |
be8d2b03 | 30-Jun-2022 |
Sean McArthur |
hyper: use wakers for curl pause/resume Closes #9070 |
c7f53b74 | 30-Jun-2022 |
Viktor Szakats |
Makefile.m32: do not set the libcurl.rc debug flag [ci skip] Delete `-DDEBUGBUILD=0` windres option. This was likely meant to disable VS_FF_DEBUG in FILEFLAGS, but any assigned value ena
Makefile.m32: do not set the libcurl.rc debug flag [ci skip] Delete `-DDEBUGBUILD=0` windres option. This was likely meant to disable VS_FF_DEBUG in FILEFLAGS, but any assigned value enabled it instead. Delete this unnecessary option and thus sync up with how CMake compiles libcurl.rc by default. Reviewed-by: Jay Satiro Closes #9069
show more ...
|
1dda49a1 | 29-Jun-2022 |
Daniel Stenberg |
curl.h: CURLE_CONV_FAILED is obsoleted The last use was removed in 7.82.0. Updated some docs too to reflect the current error code situation. Closes #9067 |
f57f96de | 28-Jun-2022 |
Daniel Stenberg |
curl: output warning when a cookie is dropped due to size Dropped from the request, that is. Closes #9064 |
8ab44995 | 28-Jun-2022 |
Daniel Stenberg |
curl_mime_data.3: polish the wording Closes #9063 |
a68074b5 | 28-Jun-2022 |
Daniel Stenberg |
configure: check for the stdatomic.h header in configure ... and only set HAVE_ATOMIC if that header exists since we use typedefes set in it. Reported-by: Ryan Schmidt Fixes
configure: check for the stdatomic.h header in configure ... and only set HAVE_ATOMIC if that header exists since we use typedefes set in it. Reported-by: Ryan Schmidt Fixes #9059 Closes #9060
show more ...
|
33fd57b8 | 28-Jun-2022 |
Daniel Stenberg |
easy_lock: fix the #ifdef conditional for ia32_pause To work better with new and old clang compilers. Reported-by: Ryan Schmidt Assisted-by: Joshua Root Fixes #9058
easy_lock: fix the #ifdef conditional for ia32_pause To work better with new and old clang compilers. Reported-by: Ryan Schmidt Assisted-by: Joshua Root Fixes #9058 Closes #9062
show more ...
|
50efb082 | 28-Jun-2022 |
Daniel Stenberg |
easy_lock: switch to using atomic_int instead of bool To work with more compilers without requiring separate libs to link. Like with gcc-12 for RISC-V on Linux. Reported-by: Ada
easy_lock: switch to using atomic_int instead of bool To work with more compilers without requiring separate libs to link. Like with gcc-12 for RISC-V on Linux. Reported-by: Adam Sampson Fixes #9055 Closes #9061
show more ...
|
e631f6e1 | 27-Jun-2022 |
vvb2060 |
ngtcp2: fix incompatible function pointer types Closes #9056 |
5a1a8925 | 27-Jun-2022 |
vvb2060 |
easy_lock.h: use __asm__ instead of asm to fix build Closes #9056 |