Commit Graph

30828 Commits

Author SHA1 Message Date
Christian Hesse
b02b907099
docs/cmdline-opts: match the current output
The release date has been added in output, reflect that in documentation.

Closes #11723
2023-08-24 23:03:34 +02:00
Daniel Stenberg
2ff7cd75c7
lib: minor comment corrections 2023-08-24 10:02:23 +02:00
Daniel Stenberg
5b060a4108
docs: rewrite to present tense
... instead of using future tense.

+ numerous cleanups and improvements
+ stick to "reuse" not "re-use"
+ fewer contractions

Closes #11713
2023-08-23 23:26:10 +02:00
Daniel Stenberg
887b998e6e
urlapi: setting a blank URL ("") is not an ok URL
Test it in 1560
Fixes #11714
Reported-by: ad0p on github
Closes #11715
2023-08-23 23:24:16 +02:00
Daniel Stenberg
5e2beb3395
spelling: use 'reuse' not 're-use' in code and elsewhere
Unify the spelling as both versions were previously used intermittently

Closes #11717
2023-08-23 23:22:36 +02:00
Michael Osipov
1a14f2179b
system.h: add CURL_OFF_T definitions on HP-UX with HP aCC
HP-UX on IA64 provides two modes: 32 and 64 bit while 32 bit being the
default one. Use "long long" in 32 bit mode and just "long" in 64 bit
mode.

Closes #11718
2023-08-23 23:19:28 +02:00
Dan Fandrich
814dc4b240 tests: don't call HTTP errors OK in test cases
Some HTTP errors codes were accompanied by the text OK, which causes
some cognitive dissonance when reading them.
2023-08-22 15:32:16 -07:00
Dan Fandrich
86179afcbb http: close the connection after a late 417 is received
In this situation, only part of the data has been sent before aborting
so the connection is no longer usable.

Assisted-by: Jay Satiro
Fixes #11678
Closes #11679
2023-08-22 15:32:16 -07:00
Dan Fandrich
0d89c9096d runtests: slightly increase the longest log file displayed
The new limit provides enough space for a 64 KiB data block to be logged
in a trace file, plus a few lines at the start and end for context. This
happens to be the amount of data sent at a time in a PUT request.
2023-08-22 15:32:16 -07:00
Dan Fandrich
66883a89d6 tests: add delay command to the HTTP server
This adds a delay after client connect.
2023-08-22 15:32:16 -07:00
Daniel Stenberg
a2caea87bc
cirrus: install everthing with pkg, avoid pip
Assisted-by: Sevan Janiyan

Closes #11711
2023-08-22 23:06:20 +02:00
Daniel Stenberg
8ef2992e11
curl_url*.3: update function descriptions
- expand and clarify several descriptions
- avoid using future tense all over

Closes #11708
2023-08-22 15:40:57 +02:00
Daniel Stenberg
c996e02afe
RELEASE-NOTES: synced 2023-08-22 08:26:12 +02:00
Stefan Eissing
527a17dc21
CI/cirrus: disable python install on FreeBSD
- python cryptography package does not build build FreeBSD
- install just mentions "error"
- this gets the build and the main test suite going again

Closes #11705
2023-08-21 19:46:00 +02:00
Stefan Eissing
862741637b
test2600: fix flakiness on low cpu
- refs #11355 where failures to to low cpu resources in CI
  are reported
- vastly extend CURLOPT_CONNECTTIMEOUT_MS and max durations
  to test cases
- trigger Curl_expire() in test filter to allow re-checks before
  the usual 1second interval

Closes #11690
2023-08-21 11:30:35 +02:00
Maksim Sciepanienka
20e3287aca
tool_urlglob: use the correct format specifier for curl_off_t in msnprintf
Closes #11698
2023-08-20 23:14:50 +02:00
Daniel Stenberg
73b6d4e814
test687/688: two more basic --xattr tests
Closes #11697
2023-08-20 10:31:41 +02:00
Daniel Stenberg
b3ee22193a
cmdline-opts/docs: mentioned the negative option part
... for --no-alpn and --no-buffer in the same style done for other --no-
options:

"Note that this is the negated option name documented."

Closes #11695
2023-08-19 23:51:46 +02:00
Emanuele Torre
70f1b540f3
tool/var: also error when expansion result starts with NUL
Expansions whose output starts with NUL were being expanded to the empty
string, and not being recognised as values that contain a NUL byte, and
should error.

Closes #11694
2023-08-19 23:50:37 +02:00
Daniel Stenberg
1c3fcbdaa9
tests: add 'large-time' as a testable feature
This allows test cases to require this feature to run and to be used in
%if conditions.

Large here means larger than 32 bits. Ie does not suffer from y2038.

Closes #11696
2023-08-19 23:37:02 +02:00
Daniel Stenberg
98483a8a3f
tests/Makefile: add check-translatable-options.pl to tarball
Used in test 1544

Follow-up to ae806395ab
2023-08-18 08:49:17 +02:00
Daniel Stenberg
c5eda5df64
gen.pl: fix a long version generation mistake
Too excessive escaping made the parsing not find the correct long names
later and instead add "wrong" links.

Follow-up to 439ff2052e

Reported-by: Lukas Tribus
Fixes #11688
Closes #11689
2023-08-18 08:18:30 +02:00
Daniel Stenberg
74b87a8af1
lib: move mimepost data from ->req.p.http to ->state
When the legacy CURLOPT_HTTPPOST option is used, it gets converted into
the modem mimpost struct at first use. This data is (now) kept for the
entire transfer and not only per single HTTP request. This re-enables
rewind in the beginning of the second request instead of in end of the
first, as brought by 1b39731.

The request struct is per-request data only.

Extend test 650 to verify.

Fixes #11680
Reported-by: yushicheng7788 on github
Closes #11682
2023-08-17 23:49:57 +02:00
Patrick Monnerat
821d108fc9
os400: do not check translatable options at build time
Now that there is a test for this, the build time check is not needed
anymore.

Closes #11650
2023-08-17 17:34:57 +02:00
Patrick Monnerat
ae806395ab
test1554: check translatable string options in OS400 wrapper
This test runs a perl script that checks all string options are properly
translated by the OS400 character code conversion wrapper. It also
verifies these options are listed in alphanumeric order in the wrapper
switch statement.

Closes #11650
2023-08-17 17:34:35 +02:00
Daniel Stenberg
e90d356570
unit3200: skip testing if function is not present
Fake a successful run since we have no easy mechanism to skip this test
for this advanced condition.
2023-08-17 17:17:59 +02:00
Daniel Stenberg
de7d421067
unit2600: fix build warning if built without verbose messages 2023-08-17 17:17:59 +02:00
Daniel Stenberg
7c4cb065b7
test1608: make it build and get skipped without shuffle DNS support 2023-08-17 17:17:59 +02:00
Daniel Stenberg
e67718eef7
lib: --disable-bindlocal builds curl without local binding support 2023-08-17 17:17:59 +02:00
Daniel Stenberg
97a79c79a7
test1304: build and skip without netrc support 2023-08-17 17:17:59 +02:00
Daniel Stenberg
acca40c9b5
lib: build fixups when built with most things disabled
Closes #11687
2023-08-17 17:17:54 +02:00
Daniel Stenberg
793157c51b
workflows/macos.yml: disable zstd and alt-svc in the http-only build
Closes #11683
2023-08-17 16:58:58 +02:00
Stefan Eissing
1bccee76c8
bearssl: handshake fix, provide proper get_select_socks() implementation
- bring bearssl handshake times down from +200ms down to other TLS backends
- vtls: improve generic get_select_socks() implementation
- tests: provide Apache with a suitable ssl session cache

Closes #11675
2023-08-17 13:45:08 +02:00
Stefan Eissing
57e81ff3db
tests: TLS session sharing test
- test TLS session sharing with special test client
- expect failure with wolfSSL
- disable flaky wolfSSL test_02_07b

Closes #11675
2023-08-17 13:44:55 +02:00
Daniel Stenberg
dd094ba547
CURLOPT_*TIMEOUT*: extend and clarify
Closes #11686
2023-08-17 13:01:47 +02:00
Daniel Stenberg
a281057091
urlapi: return CURLUE_BAD_HOSTNAME if puny2idn encoding fails
And document it. Only return out of memory when it actually is a memory
problem.

Pointed-out-by: Jacob Mealey
Closes #11674
2023-08-17 08:21:08 +02:00
Mathew Benson
9ec764ee1f
cmake: add GnuTLS option
- Option to use GNUTLS was missing. Hence was not able to use GNUTLS
  with ngtcp2 for http3.

Closes #11685
2023-08-17 08:17:39 +02:00
Daniel Stenberg
eb3b049df5
RELEASE-NOTES: synced 2023-08-16 11:11:24 +02:00
Daniel Stenberg
be21769cc7
http: remove the p_pragma struct field
unused since 40e8b4e52 (2008)

Closes #11681
2023-08-16 11:01:10 +02:00
Jay Satiro
8843bef318 CURLINFO_CERTINFO.3: better explain curl_certinfo struct
Closes https://github.com/curl/curl/pull/11666
2023-08-16 03:21:49 -04:00
Jay Satiro
24ad247107 CURLINFO_TLS_SSL_PTR.3: clarify a recommendation
- Remove the out-of-date SSL backend list supported by
  CURLOPT_SSL_CTX_FUNCTION.

It makes more sense to just refer to that document instead of having
a separate list that has to be kept in sync.

Closes https://github.com/curl/curl/pull/11665
2023-08-16 03:20:56 -04:00
Jay Satiro
2e8fbec2db
write-out.d: clarify %{time_starttransfer}
sync it up with CURLINFO_STARTTRANSFER_TIME_T
2023-08-15 14:52:12 +02:00
Daniel Stenberg
ab3b2c47bd
transfer: don't set TIMER_STARTTRANSFER on first send
The time stamp is for measuring the first *received* byte

Fixes #11669
Reported-by: JazJas on github
Closes #11670
2023-08-15 14:52:01 +02:00
trrui-huawei
23c3dc20c1
quiche: enable quiche to handle timeout events
In parallel with ngtcp2, quiche also offers the `quiche_conn_on_timeout`
interface for the application to invoke upon timer
expiration. Therefore, invoking the `on_timeout` function of the
Connection is crucial to ensure seamless functionality of quiche with
timeout events.

Closes #11654
2023-08-15 14:38:31 +02:00
trrui-huawei
bcc51b76c5
quiche: adjust quiche QUIC_IDLE_TIMEOUT to 60s
Set the `QUIC_IDLE_TIMEOUT` parameter to match ngtcp2 for consistency.
2023-08-15 14:37:54 +02:00
Daniel Stenberg
ce254fa96f
KNOWN_BUGS: LDAPS requests to ActiveDirectory server hang
Closes #9580
2023-08-15 14:21:15 +02:00
Daniel Stenberg
8a86ccf343
imap: add a check for failing strdup() 2023-08-14 18:07:12 +02:00
Daniel Stenberg
91765104c2
imap: remove the only sscanf() call in the IMAP code
Avoids the use of a stack buffer.

Closes #11673
2023-08-14 18:07:12 +02:00
Daniel Stenberg
de5f66595e
imap: use a dynbuf in imap_atom
Avoid a calculation + malloc. Build the output in a dynbuf.

Closes #11672
2023-08-14 15:56:11 +02:00
Marin Hannache
67e9e3cb1e
http: do not require a user name when using CURLAUTH_NEGOTIATE
In order to get Negotiate (SPNEGO) authentication to work in HTTP you
used to be required to provide a (fake) user name (this concerned both
curl and the lib) because the code wrongly only considered
authentication if there was a user name provided, as in:

  curl -u : --negotiate https://example.com/

This commit leverages the `struct auth` want member to figure out if the
user enabled CURLAUTH_NEGOTIATE, effectively removing the requirement of
setting a user name both in curl and the lib.

Signed-off-by: Marin Hannache <git@mareo.fr>
Reported-by: Enrico Scholz
Fixes https://sourceforge.net/p/curl/bugs/440/
Fixes #1161
Closes #9047
2023-08-14 10:21:46 +02:00