Commit graph

7451 commits

Author SHA1 Message Date
Viktor Szakats
b23dbd4448
fixes 2026-04-14 23:40:57 +02:00
Viktor Szakats
d9d073d0eb
fixes 2026-04-14 23:40:57 +02:00
Viktor Szakats
388889bae5
fixes quiche 2 2026-04-14 23:40:57 +02:00
Viktor Szakats
b8980800ae
fixes 2026-04-14 23:40:56 +02:00
Viktor Szakats
726920069f
fixes 2026-04-14 23:40:56 +02:00
Viktor Szakats
d005d0b643
fixes 2026-04-14 23:40:56 +02:00
Viktor Szakats
2f6eec2c77
fixes 2026-04-14 23:40:56 +02:00
Viktor Szakats
d498dba2e8
fixes 2026-04-14 23:40:56 +02:00
Viktor Szakats
8f3e83b8a1
fixes 2026-04-14 23:40:56 +02:00
Viktor Szakats
fd77e84f0e
fixes 2026-04-14 23:40:56 +02:00
Viktor Szakats
c1b4851f56
fixes 2026-04-14 23:40:56 +02:00
Viktor Szakats
21a9cd6988
fixes 2026-04-14 23:40:56 +02:00
Viktor Szakats
ccc5ef07ab
fixes 2026-04-14 23:40:56 +02:00
Viktor Szakats
f31365d6e9
fixes 2026-04-14 23:40:56 +02:00
Viktor Szakats
abf8d0315d
fixes 2026-04-14 23:40:56 +02:00
Viktor Szakats
a5e3bb85ce
cast enum to int 2026-04-14 23:40:56 +02:00
Viktor Szakats
b15d51dad3
first.c fix result type mask 2026-04-14 23:40:56 +02:00
Viktor Szakats
870d331885
first.c fix result type mask 2026-04-14 23:40:56 +02:00
Viktor Szakats
c9c9723506
cli_ws_pingpong.c cli_ws_data.c fix result type mask 2026-04-14 23:40:56 +02:00
Viktor Szakats
ef768f45c8
first.c drop maybe redundant result cast? 2026-04-14 23:40:56 +02:00
Viktor Szakats
dc8b2bb85d
unit1302.c drop redundant result casts 2026-04-14 23:40:56 +02:00
Viktor Szakats
d0377cf134
unit1658.c drop redundant result cast 2026-04-14 23:40:56 +02:00
Viktor Szakats
fbca3b21ba
unit1660.c drop redundant result cast 2026-04-14 23:40:56 +02:00
Viktor Szakats
b3614254ae
silence globally 2026-04-14 23:40:55 +02:00
Viktor Szakats
bd09df3081
server fix fmt 2026-04-14 23:40:55 +02:00
Viktor Szakats
094cfd8aa2
server fix cast mqttd.c 2026-04-14 23:40:55 +02:00
Viktor Szakats
645b70ecb7
server fix cast 2026-04-14 23:40:55 +02:00
Daniel Stenberg
3a19987a87
urldata: move cookiehost to struct SingleRequest
To make it scoped for the single request appropriately.

Reported-by: Muhamad Arga Reksapati

Verify with libtest 2504: a custom Host *disabled* on reused handle

Closes #21312
2026-04-14 16:59:11 +02:00
Stefan Eissing
86f1e5b3f6
test dnsd: implement delayed responses
Add "Delay-A: ms", "Delay-AAAA: ms" and "Delay-HTTPS: ms" to the test
dnsd config and implement delayed response handling.

Add test_21_09 and test_21_10 to check that delayed responses connect
using the undelayed address family.

Closes #21299
2026-04-14 16:49:07 +02:00
Daniel Stenberg
0567e72168
tests: use %b64[] instead of "raw" base64
Closes #21313
2026-04-14 16:18:14 +02:00
Daniel Stenberg
188c2f166a
http: clear the proxy credentials as well on port or scheme change
Add tests 2009-2011 to verify switching between proxies with credentials
when the switch is driven by a redirect

Reported-by: Dwij Mehta

Closes #21304
2026-04-14 16:14:51 +02:00
Daniel Stenberg
9ceb3ff46a
urlapi: stop extracting hostname from file:// URLs on Windows
There is no reason we should treat this part different on Windows. Noe
anything except blank, localhost or 127.0.0.1 cause error there as well.

Also: fix query handling in urlencode_str

Closes #21296
2026-04-14 12:09:48 +02:00
Daniel Stenberg
0b4ebebb06
test1675: unit tests for URL API helper functions
- ipv4_normalize
- urlencode_str
- ipv6_parse
- parse_file

urlapi: make the string URL encoder normalize to uppercase
percent-encoding

Closes #21296
2026-04-14 12:09:38 +02:00
Daniel Stenberg
d7a991cc9b
lib1560: fix comment typo 2026-04-14 12:09:04 +02:00
dependabot[bot]
bcb02fe526
GHA: bump pytest from 9.0.2 to 9.0.3
CVE-2025-71176

Closes #21306
2026-04-14 02:27:15 +02:00
Viktor Szakats
e0dd6eb4a4
tidy-up: miscellaneous
- examples: sync debug output printf masks.
- INSTALL-CMAKE.md: tidy up section for some options.
- curl_sha512_256: delete comment suggesting an optimization.
- vtls/keylog: scope a variable.
- vtls/openssl: make a source code URL a permalink.
- vtls/schannel: drop redundant parentheses.
- test1119.pl: robustify `$1` -> `$s`.
- sync arg names in comments to match the code.
- tidy up and minor fixes to comments.
- fix formatting/indenting/comment/newline/include nits.
- move `UNITTEST` protos next to definitions, sync their argument names.
- make variables static.
- add parentheses to Perl `open()` calls.
- drop unnecessary double quotes in Perl.
- clang-format.

Closes #21000
2026-04-14 01:08:32 +02:00
Daniel Stenberg
9ded494f0e
test1560: add a few more URL API test variations
Closes #21294
2026-04-13 21:58:55 +02:00
Stefan Eissing
40d57c9f58
hostip: resolve user supplied ip addresses
When a user supplied an ip address in a URL as hostname, use that even
when address family restrictions like -4 or -6 are set.

Add test_10_15/16 to verify with a local proxy server.

Fixes #21146
Reported-by: Terrance Wong

How:
- cf-dns: on see the hostname is an ip(v6) address, add the respective
  A/AAAA to the dns query bits
- cf-dns/hostip: only hand out addrinfos for a family if that family
  is part of the DNS queries. That prevents for example ipv6 addresses
  to show up from dns cache entries
- change cf-ip-happy to no longer check for "ip_version" and instead
  use all addresses that cf-dns hands out

Closes #21295
2026-04-13 19:52:30 +02:00
Stefan Eissing
a483128b01
pytest: test threaded resolver
Add `resolv-threaded` to curlinfo to detect use of the threaded resolver
correctly even with c-ares linked to https-rr.

Run test_21_05 exactly when threaded resolver is built.

Closes #21287
2026-04-11 17:31:56 +02:00
Daniel Stenberg
879209fc88
unit1398: add msnprintf tests with negative precision
Closes #21292
2026-04-11 17:22:22 +02:00
Daniel Stenberg
3e40ccb875
getinfo: repair CURLINFO_TLS_SESSION
This should return a SSL_CTX pointer but it was accidentally broken.

Verify with test 1587

Follow-up to 2db8ae480f

Spotted by Codex Security

Closes #21290
2026-04-11 16:56:22 +02:00
Daniel McCarney
0a7e1982fe
tests/http: add abrupt server close test
Test that connecting to a server that immediately closes the connection
produces an error instead of hanging/timing out.
2026-04-10 15:58:39 +02:00
Stefan Eissing
a5542c23e7
pytest: adding support for dnsd test server
Add tests to test_21 with checks for 'overrride-dns' from curlinfo.

Closes #21289
2026-04-10 14:29:29 +02:00
Stefan Eissing
7c8f11e953
pytest: switch off h3 for pytest_07_22
Run test_07_22 only on http/1.1 and h2. For h3, we get unreliable tests
results in CI due to (probably) nghttpx not always reporting the RESET
from the backend and the test timing out.

Closes #21286
2026-04-10 12:39:51 +02:00
Daniel Stenberg
e5087ac9fc
http: on 303, switch to GET
... unless it is a POST and the user explicitly asked to keep doing
POST.

Add test1983/1984: verify --follow with 303 and PUT + custom GET

Fixes #20715
Reported-by: Dan Arnfield
Closes #21280
2026-04-10 09:39:39 +02:00
Stefan Eissing
a28540787c
asyn-ares: connect async
Make separate queries for A and AAAA records. Hand out A/AAAA/HTTPS
information before all queries are complete.

Closes #21205
2026-04-09 09:32:12 +02:00
dependabot[bot]
3bde26dac8
tests/http: bump cryptography from 46.0.6 to 46.0.7
Closes #21273
2026-04-09 02:13:34 +02:00
Dan Fandrich
17e8200733 tests: make whitespace between functions and classes consistent
Mostly, this means two blank lines between classes and functions and one
line between methods. Since these checks are currently in preview, they
are done in a separate ruff invocation to avoid turning ALL the preview
checks on at the same time.
2026-04-08 10:28:05 -07:00
Dan Fandrich
98e470b3a8 tests: alphabetize and group Python imports & add check
- De-duplicates, groups, and sorts imports based on the provided `isort` settings.
2026-04-08 10:28:05 -07:00
Dan Fandrich
4c1b6f5494 tests: enable more ruff checks
- Checks for missing explicit `return` statements at the end of functions
that can return non-`None` values.
- Checks for classes that inherit from `object`.
- Checks for useless expressions.
- Within an `except*` clause, raise exceptions with `raise ... from err`
or `raise ... from None` to distinguish them from errors in exception
handling
- Checks for variable assignments that immediately precede a `return` of the
assigned variable.
- Checks for `else` statements with a `return` statement in the preceding
`if` block.
- Checks for unnecessary parentheses on raised exceptions.

Closes: #21258
2026-04-08 10:28:05 -07:00