-
Notifications
You must be signed in to change notification settings - Fork 0
Resolve conflicts #12
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Fixes curl#18390 Reported-by: Sebastian Carlos Closes curl#18399
- switch x86 job to x64. x86 is not longer actively maintained in curl-for-win. Ref: curl/curl-for-win#68 - switch back from libssh2 to libssh. Reverts af8e1aa curl#18257 - fix to really build with zlib-classic. Follow-up to 8076824 curl#17357 Closes curl#18400
If --trace-config is used to set a level before -v is used, don't reset the state on first -v (to "-all") as it otherwise does. This way, --trace-config can be used to set specific trace items before -v on the command line and it still works. Previously, the first -v use would otherwise reset and undo the earlier --trace-config items. Fixes curl#18346 Closes curl#18361
This function returned error on MANY places, each with its own cleanup sequence and by the look of it almost all of them were incomplete, making them leak resources on errors. This take now gotos to the error label where it cleans everything up before returning error. This also simplifies the function a lot. Closes curl#18315
Every time we first run runtests with -j and then again *without* -j, this message was shown: "Warning: $runnerid: cleardir(log) failed" Not anymore. Closes curl#18404
- Avoid checking what's always true. The ftpcode pointer is always passed in, so use it. - Simplified an indent level somewhat - Split out two functions from the state machine Closes curl#18403
Before (build, test run): https://github.com/curl/curl/actions/runs/16974205126/job/48118716664 25s, 12m56 https://github.com/curl/curl/actions/runs/16973102133/job/48114977897 24s, 12m51 After, with batch size 50 (build, test run): https://github.com/curl/curl/actions/runs/17250901063/job/48952645881?pr=18293 16s, 12m51 https://github.com/curl/curl/actions/runs/17250901063/job/48953665204?pr=18293 17s, 12m42 Closes curl#18293
by splitting out functions for client certificate and setting min/max TLS version Closes curl#18402
Once added in cd4aee1 to work around connection shutdown issues. Closes curl#18405
Follow-up to b6a5f67 which improved the handshake procedure. Ref: curl#18323 Closes curl#18410
- Move the schannel_recv renegotiation code to function schannel_recv_renegotiate. - Save the state of a pending renegotiation. - Pre-empt schannel_recv and schannel_send to continue a pending renegotation. - Partially block during renegotiation if necessary. Prior to this change, since a1850ad (precedes 8.13.0), schannel_recv did not properly complete renegotiation before attempting to decrypt data. In some cases that could cause an error SEC_E_CONTEXT_EXPIRED. Most of the time though DecryptMessage would succeed by chance and return SEC_I_RENEGOTIATE which allowed the renegotiation to continue. Reported-by: stephannn@users.noreply.github.com Reported-by: Dustin L. Howett Fixes curl#18029 Closes curl#18125
in March 2026 That month, c-ares 1.16.0 celebrates its sixth birthday. Closes curl#18408
Applied the same workaround to the build examples as used earlier in CI. That is, drop `<path> from `--with-ngtcp2=<path>` and configure env `PKG_CONFIG_PATH` instead. Till the root cause is fixed. Ref: 9950066 curl#18028 Reported-by: Pavel Kropachev Fixes curl#18188 Closes curl#18415
Write out 9-length frames to client's WRITEFUNCTION Read 0-length frames from READFUNCTION *if* the function started a new frame via `curl_ws_start_frame()`. Fixes curl#18286 Closes curl#18332 Reported-by: Andriy Druk
init char whose address is passed for a 0-length buffer, clang does not like it Refs curl#18418 Closes curl#18420
- add Curl_secure_context(), to have it determined in a single place. - tweak the Curl_cookie_getlist() proto. Move some logic into the function - at is only called in a single place. Instead of forcing the caller to do it. - make 'is_ip' a const Closes curl#18419
It's causing false-positives with clang-tidy v21, in cases in system
headers (seen in `FD_ISSET()` with macOS SDK). In some cases in
tests/server, there was no distinct source line that was triggering it.
Example:
```
/Applications/Xcode_16.4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.5.sdk/usr/include/sys/_types/_fd_def.h:83:10: error: Potential out of bound access to 'fds_read.fds_bits' with tainted index [clang-analyzer-security.ArrayBound,-warnings-as-errors]
83 | return _p->fds_bits[(unsigned long)_fd / __DARWIN_NFDBITS] & ((__int32_t)(((unsigned long)1) << ((unsigned long)_fd % __DARWIN_NFDBITS)));
| ^
[...]
/Users/runner/work/curl/curl/tests/server/socksd.c:679:5: note: Taking false branch
679 | if(rc < 0) {
| ^
```
Closes curl#18422
As SIZE_MAX exists in C99 Assisted-by: Stefan Eissing Assisted-by: Jay Satiro Ref: curl#18406 Closes curl#18426
Perl got bumped from 5.38.4 to 5.40.3. The new version crashes when loading the `Win32::Process*` modules built and cached in CI. The build job uses Perl 5.38.4. To avoid the crash, include the Perl version (hashed) in the cache key, so that it's only loaded when the Perl version matches. This solution is imperfect, because some of the jobs will not use the Perl modules in transition periods, when different jobs use different Perl versions. Anyway, can't think of a better one for now. Another option is to drop the effort with these modules. After all they did not help with crashes and hangs, nor with performance. While adding quite a bit of CI complexity. Also: - test early if the modules load and log the result. Follow-up to 52775a7 curl#18296 Closes curl#18425
Default timeout is hardcoded (10 seconds) and doesn't respect --connect-timeout parameter. In some cases 10 seconds can be not enough or too long to "establish a connection". Moreover the non-working --connect-timeout parameter for http3 is confusing. This change makes the handshake timeout equal to --connect-timeout, if it's set. Discussion is here curl#18427 Closes curl#18431
Handle errors returned by the callback the same for 0-length writes as for all the others. Closes curl#18428
To have it included by the time checking for `SIZE_MAX` and `SSIZE_MAX`. Ref: 93f333c curl#18426 curl#18406 Closes curl#18430
- using {} with single entries makes little sense
- when using {} sets with two entry lists, there can only be 64 to reach
maximum number of URLs
Verify the max check in test 761
https://github.com/msys2/setup-msys2/releases/tag/v2.29.0 Includes perl 5.40.3. Ref: 5bb49a4 curl#18425 Closes curl#18438
In some configs they happen Closes curl#18441
This allows --remote-time to set dates before 1970. Due to a minor omission in the API, it will still avoid setting the time if it is indeed exactly epoch 0 (jan 1 1970). Verified by test 762 Fixes curl#18424 Reported-by: Terence Eden Closes curl#18443
To avoid having to alloc or manage it separately. Closes curl#18442
Instead of checking it runtime. CodeSonar pointed out that if it actually CAN legitimately be NULL here, then we need to do more checks for it... Closes curl#18440
This was already done when building using CMake: https://github.com/curl/curl/blob/fa9151b41ad986e0514d99dd3fe149f26a7a57a3/CMakeLists.txt#L2391-L2394 Closes curl#18433
test_10_08, uploading larger files for a h2 proxy, sporadically fails with a decrpytion error on received data in AWS-LC. The frequency can be increased by simulated network receive blocks. Not setting a 4 * TLS record sized buffer, leaving AWS-LC at its default buffer size seems to mitigate this problem. Closes curl#18434
The libcurl API for CURLINFO_FILETIME_T clearly says it contains -1 if not set. Everything else is a valid time stamp so use that. Follow-up to 54f1ef0 Closes curl#18446
Only -1 means bad value, all others are acceptable. Ref: curl#18424 Closes curl#18447
Split out adding of individual request headers into a switch. Check the connection http version only on fresh connections, use separate methods. Add TE: header directly without allocation. Add bit for indicating Connection: header has been added and custom headers should not do that again. Closes curl#18444
By returning error separately on parse errors and avoiding magic numbers, this function can now return 0 or -1 as proper dates when such a date string is provided. Closes curl#18445
This allows IDEs that support this standard to automatically use the correct formatting options. Closes curl#18409
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.