Commit Graph

31718 Commits

Author SHA1 Message Date
Viktor Szakats
bdb0bf4782
cmake: fix function description in comment [ci skip]
Closes #12879
2024-02-06 22:20:33 +00:00
Daniel Stenberg
a5c86203be
header.md: remove backslash, make nicer markdown
- remove a leftover backslash before a dash
- use backticks for "code" strings

Closes #12877
2024-02-06 13:07:02 +01:00
Daniel Stenberg
755b31da10
docs: add mk-ca-bundle.1 to dist
... which also makes it get built. But don't build this or curl-config.1
if build docs is disabled.

Closes #12875
2024-02-06 11:04:09 +01:00
Stefan Eissing
c177e1944c
https-proxy: use IP address and cert with ip in alt names
- improve info logging when peer verification fails to indicate
  if DNS name or ip address has been tried to match
- add test case for contacting https proxy with ip address
- add pytest env check on loaded credentials and re-issue
  when they are no longer valid
- disable proxy ip address test for bearssl, since not supported there

Ref: #12831
Closes #12838
2024-02-06 10:10:14 +01:00
Jiawen Geng
4f79455877
docs: add necessary setup for nghttp3
Now nghttp3 has submodules
https://github.com/ngtcp2/nghttp3/blob/main/.gitmodules

Closes #12859
2024-02-06 09:56:39 +01:00
Peter Krefting
174c89ec3f
version: allow building with ancient libpsl
The psl_check_version_number() API was added in libpsl 0.11.0. CentOS 7
ships with version 0.7.0 which lacks this API. Revert to using the older
versioning API if we detect an old libpsl version.

Follow-up to 72bd88adde
Bug: https://curl.se/mail/archive-2024-02/0004.html
Reported-by: Scott Mutter
Closes #12872
2024-02-06 09:50:35 +01:00
Daniel Stenberg
8050761e1a
TODO: Support latest rustls
Closes #12737
Closes #12874
2024-02-06 09:36:17 +01:00
Daniel Stenberg
d94733b447
docs: make curldown do angle brackets like markdown
Make sure we use \< and \> in markdown all over so that it renders
correctly, on GitHub and elsewhere. cd2nroff now outputs a warning if it
finds an unescaled angle bracket.

Ref: #12854
Closes #12869
2024-02-06 08:17:40 +01:00
Daniel Stenberg
80944740e5
docs: fix the --disable-docs for autotools
Follow-up to 541321507e

Closes #12870
2024-02-06 08:09:44 +01:00
Daniel Stenberg
ad79612f97
RELEASE-NOTES: synced 2024-02-06 00:14:44 +01:00
Daniel Stenberg
bf411ccd0d
libcurl-security.md: Active FTP passes on the local IP address
Reported-by: Harry Sintonen
Closes #12867
2024-02-06 00:11:39 +01:00
Stefan Eissing
577182a6df
configure: do not link with nghttp3 unless necessary
Fixes #12833
Closes #12864
Reported-by: Ryan Carsten Schmidt
2024-02-05 23:47:39 +01:00
Daniel Stenberg
a982d19ab9
THANKS: add Dmitry Tretyakov
... since I missed to give credit to the report in the fix of #12861
2024-02-05 23:46:26 +01:00
Stefan Eissing
d6825df334
openssl-quic: check on Windows that socket conv to int is possible
Fixes #12861
Closes #12865
2024-02-05 23:45:01 +01:00
Daniel Stenberg
75d79a4486
tool_cb_hdr: only parse etag + content-disposition for 2xx
... and ignore them for other response codes.

Reported-by: Harry Sintonen
Closes #12866
2024-02-05 23:40:33 +01:00
Daniel Stenberg
5cc2b016c3
md4: include strdup.h for the memdup proto
Reported-by: Erik Schnetter
Fixes #12849
Closes #12863
2024-02-05 23:38:12 +01:00
Joel Depooter
aefb0bde4e
docs: add missing slashes to SChannel client certificate documentation
When setting the CURLOPT_SSLCERT option to a certificate thumprint, it
is required to have a backslash between the "store location", "store
name" and "thumbprint" tokens. These slashes were present in the
previous documentation, but were missed in the transition to markdown
documentation.

Closes #12854
2024-02-05 22:55:38 +01:00
Stefan Eissing
0dc036225b
HTTP/2: write response directly
- use the new `Curl_xfer_write_resp()` to write incoming responses
  directly to the client
- eliminates `stream->recvbuf`
- memory consumption on parallel transfers minimized

Closes #12828
2024-02-05 22:29:21 +01:00
Daniel Stenberg
8911d86719
cookie.md: provide an example sending a fixed cookie
Closes #12868
2024-02-05 22:27:48 +01:00
Lars Kellogg-Stedman
3ec85206ad
ALTSVC.md: correct a typo
The ALPN documentation erroneously referred to a "host number" instead
of a "port number".

Closes #12852
2024-02-05 22:26:14 +01:00
Boris Verkhovskiy
7e2c53f72b
proxy1.0.md: fix example
Closes #12856
2024-02-05 19:41:50 +01:00
Chris Webb
541321507e
configure: add --disable-docs flag
Building man pages from curldown sources now requires perl. Add a
--disable-docs flag to configure to enable building and installing
without documentation where perl is not available or man pages are not
required. This is selected automatically (with a warning) when perl is
not found by configure.

Fixes #12832
Closes #12857
2024-02-05 19:39:52 +01:00
Faraz Fallahi
a84ad94dd6
connect.c: fix typo
Closes #12858
2024-02-05 19:33:14 +01:00
Daniel Stenberg
b8c003832d
sendf: ignore response body to HEAD
and mark the stream for close, but return OK since the response this far
was ok - if headers were received. Partly because this is what curl has
done traditionally.

Test 499 verifies. Updates test 689.

Reported-by: Sergey Bronnikov
Bug: https://curl.se/mail/lib-2024-02/0000.html
Closes #12842
2024-02-01 22:37:26 +01:00
Daniel Stenberg
10491957e3
ftp: treat a 226 arriving before data as a signal to read data
For active mode transfers.

Due to some interesting timing, curl can sometimes get the 226 (transfer
complete) over the control channel first, before the data connection
signals readability. If this happens, use that as a signal to check the
data connection.

Additionally, set the socket filter in listen mode *before* the
PORT/EPRT command is issued, to reduce the risk that the little time gap
could interfere.

This issue never reproduced for me on Debian and takes several hundred
rounds for me to trigger on my mac.

Reported-by: Stefan Eissing
Fixes #12823
Closes #12841
2024-02-01 22:32:38 +01:00
Patrick Monnerat
627c8c598f
OS400: avoid using awk in the build scripts
Awk is a PASE program and its use may cause a failure depending on the
CCSID of the calling script (IBM bug?).

For this reason, revert to an sed-only solution to extract the exported
symbols from the header files.

Closes #12826
2024-02-01 22:31:35 +01:00
Jan Macku
a911f4ffe6
docs: remove mk-ca-bundle.1 from man_MANS
It was accidentally added in https://github.com/curl/curl/pull/12730

Co-authored-by: Lukáš Zaoral <lzaoral@redhat.com>
Signed-off-by: Jan Macku <jamacku@redhat.com>

Follow-up to eefcc1bda4
Closes #12843
2024-02-01 16:08:33 +01:00
Daniel Stenberg
26f79419ee
RELEASE-NOTES: synced
and bump to 8.6.1 for now
2024-02-01 14:47:09 +01:00
Daniel Stenberg
5b50bf0cf6
cmdline-docs/Makefile: avoid using a fixed temp file name
By appending the pid number two different runs at the same time will not
trample over the same file.

Reported-by: Jon Rumsey
Fixes #12829
Closes #12839
2024-02-01 14:44:32 +01:00
Daniel Stenberg
8243ad6458
asyn-thread: use wakeup_close to close the read descriptor
Reported-by: Dan Fandrich
Ref: #12834
Closes #12836
2024-02-01 13:42:48 +01:00
Stefan Eissing
e75a48d2c3
ntml_wb: fix buffer type typo
Closes #12825
2024-02-01 13:04:56 +01:00
Daniel Stenberg
2f3e7a26bc
tool_operate: do not set CURLOPT_QUICK_EXIT in debug builds
Since it allows (small) memory leaks that interfere with torture tests
and regular memory-leak checks.

Reported-by: Dan Fandrich
Fixes #12834
Closes #12835
2024-02-01 11:43:47 +01:00
Boris Verkhovskiy
843800297f
form-string.md: correct the example
Closes #12822
2024-01-31 23:37:59 +01:00
Daniel Stenberg
5ce164e0e9
RELEASE-NOTES: synced
curl 8.6.0
2024-01-31 08:03:52 +01:00
Daniel Stenberg
4196191369
THANKS: new contributors from 8.5.0 2024-01-31 08:03:52 +01:00
Jay Satiro
f1041adff4 cd2nroff: use perl 'strict' and 'warnings'
- Use strict and warnings pragmas.

- If open() fails then show the reason.

- Set STDIN io layer :crlf so that input is properly read on Windows.

- When STDIN is used as input, the filename $f is now set to "STDIN".

Various error messages in single() use $f for the filename and this way
it is not undefined when STDIN.

Closes https://github.com/curl/curl/pull/12819
2024-01-31 00:43:21 -05:00
Daniel Stenberg
3e57bc2a84
cd2nroff: fix duplicate output issue
Assisted-by: Jay Satiro
Fixes https://github.com/curl/curl-www/issues/321
Closes #12818
2024-01-30 08:24:32 +01:00
Daniel Stenberg
011325ff29
lib: error out on multissl + http3
Since the QUIC/h3 code has no knowledge or handling of multissl it might
bring unintended consequences if we allow it.

configure, cmake and curl_setup.h all now reject this combination.

Assisted-by: Viktor Szakats
Assisted-by: Gisle Vanem
Ref: #12806
Closes #12807
2024-01-29 16:37:08 +01:00
Patrick Monnerat
2bfbb538d0
OS400: sync ILE/RPG binding
Also do not force git CRLF line endings on *.cmd files for OS400.

Closes #12815
2024-01-29 16:34:53 +01:00
Viktor Szakats
cb343182b7
build: delete/replace 3 more clang warning pragmas
- tool_msgs: delete redundant `-Wformat-nonliteral` suppression pragma.

- whitespace formatting in `mprintf.h`, lib518, lib537.

- lib518: fix wrong variable in `sizeof()`.

- lib518: bump variables to `rlim_t`.
  Follow-up to e2b394106d #1469

- lib518: sync error message with lib537
  Follow-up to 365322b8bc

- lib518, lib537: replace `-Wformat-nonliteral` suppression pragmas
  by reworking test code.

Follow-up to 5b286c2508 #12812
Follow-up to aee4ebe591 #12803
Follow-up to 0923012758 #12540
Follow-up to 3829759bd0 #12489

Reviewed-by: Daniel Stenberg
Closes #12814
2024-01-28 23:54:32 +00:00
Richard Levitte
0f4c19b66a
cmake: freshen up docs/INSTALL.cmake
- Turn docs/INSTALL.cmake into a proper markdown file,
  docs/INSTALL-CMAKE.md
- Move things around to divide the description into configuration,
  building and installing sections
- Mention the more modern cmake options to configure, build and install,
  but also retain the older variants as fallbacks

Closes #12772
2024-01-27 22:58:41 +01:00
Viktor Szakats
5b286c2508
build: delete/replace clang warning pragmas
- delete redundant warning suppressions for `-Wformat-nonliteral`.
  This now relies on `CURL_PRINTF()` and it's theoratically possible
  that this macro isn't active but the warning is. We're ignoring this
  as a corner-case here.

- replace two pragmas with code changes to avoid the warnings.

Follow-up to aee4ebe591 #12803
Follow-up to 0923012758 #12540
Follow-up to 3829759bd0 #12489

Reviewed-by: Daniel Stenberg
Closes #12812
2024-01-27 21:19:41 +00:00
Daniel Stenberg
ecb5d6bee9
RELEASE-NOTES: synced 2024-01-27 22:02:50 +01:00
Daniel Stenberg
066ed4e514
http: only act on 101 responses when they are HTTP/1.1
For 101 responses claiming to be any other protocol, bail out. This
would previously trigger an assert.

Add test 1704 to verify.

Bug: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=66184
Closes #12811
2024-01-27 21:49:20 +01:00
Scarlett McAllister
6422ab6745
_VARIABLES.md: add missing 'be' into the sentence
Closes #12809
2024-01-27 12:46:43 +01:00
Stefan Eissing
bdae275958
mqtt, remove remaining use of data->state.buffer
Closes #12799
2024-01-27 12:42:19 +01:00
Daniel Stenberg
623c3a8fa0
x509asn1: switch from malloc to dynbuf
Closes #12808
2024-01-27 12:27:35 +01:00
Daniel Stenberg
cd48e8f8a9
x509asn1: make utf8asn1str() use dynbuf instead of malloc + memcpy
Closes #12808
2024-01-27 12:27:32 +01:00
Daniel Stenberg
98b41dd4bb
x509asn1: reduce malloc in Curl_extract_certinfo
Using dynbuf

Closes #12808
2024-01-27 12:27:25 +01:00
Jay Satiro
81d2b871ab THANKS: add Alexander Bartel and Brennan Kinney
They reported and investigated #10259 which was fixed by 7b2d98df.

Ref: https://github.com/curl/curl/issues/10259
2024-01-27 02:07:05 -05:00