]> git.ipfire.org Git - thirdparty/curl.git/log
thirdparty/curl.git
3 years agoconfigure: don't enable TLS when --without-* flags are used
Stan Hu [Fri, 12 Nov 2021 00:24:57 +0000 (16:24 -0800)] 
configure: don't enable TLS when --without-* flags are used

Previously specifying `--without-gnutls` would unexpectedly attempt to
compile with GnuTLS, effectively interpreting this as
`--with-gnutls`. This caused a significant amount of confusion when
`libcurl` was built with SSL disabled since GnuTLS wasn't present.

68d89f24 dropped the `--without-*` options from the configure help, but
`AC_ARG_WITH` still defines these flags automatically. As
https://www.gnu.org/software/autoconf/manual/autoconf-2.60/html_node/External-Software.html
describes, the `action-if-given` is called when the user specifies
`--with-*` or `--without-*` options.

To prevent this confusion, we make the `--without` flag do the right
thing by ignoring the value if it set to "no".

Closes #7994

3 years agodocs/checksrc: Add documentation for STRERROR
Rikard Falkeborn [Thu, 11 Nov 2021 14:26:39 +0000 (15:26 +0100)] 
docs/checksrc: Add documentation for STRERROR

Closes #7991

3 years agovtls/rustls: adapt to the updated rustls_version proto
Daniel Stenberg [Thu, 4 Nov 2021 09:37:32 +0000 (10:37 +0100)] 
vtls/rustls: adapt to the updated rustls_version proto

Closes #7956

3 years agovtls/rustls: handle RUSTLS_RESULT_PLAINTEXT_EMPTY
Kevin Burke [Wed, 3 Nov 2021 05:50:07 +0000 (22:50 -0700)] 
vtls/rustls: handle RUSTLS_RESULT_PLAINTEXT_EMPTY

Previously we'd return CURLE_READ_ERROR if we received this, instead
of triggering the error handling logic that's present in the next if
block down.

After this change, curl requests to https://go.googlesource.com using
HTTP/2 complete successfully.

Fixes #7949
Closes #7948

3 years agozuul: update build environment for rustls-ffi 0.8.0
Kevin Burke [Tue, 9 Nov 2021 05:54:23 +0000 (21:54 -0800)] 
zuul: update build environment for rustls-ffi 0.8.0

3 years agovtls/rustls: update to compile with rustls-ffi v0.8.0
Kevin Burke [Wed, 3 Nov 2021 05:14:02 +0000 (22:14 -0700)] 
vtls/rustls: update to compile with rustls-ffi v0.8.0

Some method names, as well as the generated library name, were changed
in a recent refactoring.

Further, change the default configuration instructions to check for
Hyper in either "target/debug" or "target/release" - the latter
contains an optimized build configuration.

Fixes #7947
Closes #7948

3 years agoRELEASE-NOTES: synced
Daniel Stenberg [Thu, 11 Nov 2021 08:20:11 +0000 (09:20 +0100)] 
RELEASE-NOTES: synced

and bump the version to 7.80.1

3 years agomulti: shut down CONNECT in Curl_detach_connnection
Daniel Stenberg [Wed, 10 Nov 2021 13:42:04 +0000 (14:42 +0100)] 
multi: shut down CONNECT in Curl_detach_connnection

... to prevent a lingering pointer that would lead to a double-free.

Added test 1939 to verify.

Reported-by: Stephen M. Coakley
Fixes #7982
Closes #7986

4 years agocurl_easy_cleanup.3: remove from multi handle first
Daniel Stenberg [Wed, 10 Nov 2021 07:41:51 +0000 (08:41 +0100)] 
curl_easy_cleanup.3: remove from multi handle first

Easy handles that are used by the multi interface should be removed from
the multi handle before they are cleaned up.

Reported-by: Stephen M. Coakley
Ref: #7982
Closes #7983

4 years agourl.c: fix the SIGPIPE comment for Curl_close
Daniel Stenberg [Wed, 10 Nov 2021 08:26:40 +0000 (09:26 +0100)] 
url.c: fix the SIGPIPE comment for Curl_close

Closes #7984

4 years agoRELEASE-NOTES: synced curl-7_80_0
Daniel Stenberg [Wed, 10 Nov 2021 06:32:46 +0000 (07:32 +0100)] 
RELEASE-NOTES: synced

for curl 7.80.0

4 years agoTHANKS: add contributors from the 7.80.0 cycle
Daniel Stenberg [Wed, 10 Nov 2021 06:32:46 +0000 (07:32 +0100)] 
THANKS: add contributors from the 7.80.0 cycle

4 years agongtcp2: advertise h3 as well as h3-29
Tatsuhiro Tsujikawa [Tue, 9 Nov 2021 09:33:02 +0000 (18:33 +0900)] 
ngtcp2: advertise h3 as well as h3-29

Advertise h3 as well as h3-29 since some servers out there require h3
for QUIC v1.

Closes #7979

4 years agongtcp2: use QUIC v1 consistently
Tatsuhiro Tsujikawa [Tue, 9 Nov 2021 09:30:34 +0000 (18:30 +0900)] 
ngtcp2: use QUIC v1 consistently

Since we switched to v1 quic_transport_parameters codepoint in #7960
with quictls, lets use QUIC v1 consistently.

Closes #7979

4 years agongtcp2: compile with the latest nghttp3
Tatsuhiro Tsujikawa [Tue, 9 Nov 2021 08:33:55 +0000 (17:33 +0900)] 
ngtcp2: compile with the latest nghttp3

Closes #7978

4 years agotests: add Schannel-specific tests and disable unsupported ones
Marc Hoersken [Sat, 6 Nov 2021 15:14:17 +0000 (16:14 +0100)] 
tests: add Schannel-specific tests and disable unsupported ones

Adds Schannel variants of SSLpinning tests that include the option
--ssl-revoke-best-effort to ignore certificate revocation check
failures which is required due to our custom test CA certificate.

Disable the original variants if the Schannel backend is enabled.

Also skip all IDN tests which are broken while using an msys shell.

This is a step to simplify test exclusions for Windows and MinGW.

Reviewed-by: Jay Satiro
Reviewed-by: Marcel Raad
Reviewed-by: Daniel Stenberg
Closes #7968

4 years agodocs: NAME fixes in easy option man pages
Daniel Stenberg [Mon, 8 Nov 2021 17:08:47 +0000 (18:08 +0100)] 
docs: NAME fixes in easy option man pages

Closes #7975

4 years agoftp: make the MKD retry to retry once per directory
Roger Young [Mon, 8 Nov 2021 18:20:23 +0000 (12:20 -0600)] 
ftp: make the MKD retry to retry once per directory

Reported-by: Roger Young
Fixes #7967
Closes #7976

4 years agotool_operate: reorder code to avoid compiler warning
Daniel Stenberg [Mon, 8 Nov 2021 11:46:44 +0000 (12:46 +0100)] 
tool_operate: reorder code to avoid compiler warning

tool_operate.c(889) : warning C4701: potentially uninitialized local
variable 'per' use

Follow-up to cc71d352651a0d95
Reported-by: Marc Hörsken
Bug: https://github.com/curl/curl/pull/7922#issuecomment-963042676
Closes #7971

4 years agocurl_easy_perform.3: add a para about recv and send data
Daniel Stenberg [Mon, 8 Nov 2021 13:48:11 +0000 (14:48 +0100)] 
curl_easy_perform.3: add a para about recv and send data

Reported-by: Godwin Stewart
Fixes #7973
Closes #7974

4 years agotool_operate: fclose stream only if fopened
Daniel Stenberg [Mon, 8 Nov 2021 13:13:30 +0000 (14:13 +0100)] 
tool_operate: fclose stream only if fopened

Fixes torture test failures
Follow-up to cc71d352651

Closes #7972

4 years agolibcurl-easy.3: language polish
Daniel Stenberg [Mon, 8 Nov 2021 13:43:13 +0000 (14:43 +0100)] 
libcurl-easy.3: language polish

4 years agolimit-rate.d: this is average over several seconds
Daniel Stenberg [Sat, 6 Nov 2021 11:44:52 +0000 (12:44 +0100)] 
limit-rate.d: this is average over several seconds

Closes #7970

4 years agodocs: reduce/avoid English contractions
Daniel Stenberg [Sun, 31 Oct 2021 15:34:44 +0000 (16:34 +0100)] 
docs: reduce/avoid English contractions

You're => You are
Hasn't => Has not
Doesn't => Does not
Don't => Do not
You'll => You will
etc

Closes #7930

4 years agotool_operate: fix torture leaks with etags
Daniel Stenberg [Fri, 5 Nov 2021 22:20:14 +0000 (23:20 +0100)] 
tool_operate: fix torture leaks with etags

Spotted by torture testing 343 344 345 347.

Follow-up from cc71d352651a0
Pointed-out-by: Dan Fandrich
Closes #7969

4 years agongtcp2: support latest QUIC TLS RFC9001
Amaury Denoyelle [Thu, 4 Nov 2021 16:20:23 +0000 (17:20 +0100)] 
ngtcp2: support latest QUIC TLS RFC9001

QUIC Transport Parameters Extension has been changed between draft-29
and latest RFC9001. Most notably, its identifier has been updated from
0xffa5 to 0x0039. The version is selected through the QUIC TLS library
via the legacy codepoint.

Disable the usage of legacy codepoint in curl to switch to latest
RFC9001. This is required to be able to keep up with latest QUIC
implementations.

Acked-by: Tatsuhiro Tsujikawa
Closes #7960

4 years agotest1173: make manpage-syntax.pl spot \n errors in examples
Daniel Stenberg [Thu, 4 Nov 2021 22:54:34 +0000 (23:54 +0100)] 
test1173: make manpage-syntax.pl spot \n errors in examples

4 years agoman pages: fix backslash-n in examples
Daniel Stenberg [Thu, 4 Nov 2021 22:48:23 +0000 (23:48 +0100)] 
man pages: fix backslash-n in examples

... to be proper backslash-backslash-n sequences to render nicely in man
and on website.

Follow-up to 24155569d8a
Reported-by: Sergey Markelov
Fixes https://github.com/curl/curl-www/issues/163
Closes #7962

4 years agoscripts/release-notes.pl: use out of repo links verbatim in refs
Daniel Stenberg [Thu, 4 Nov 2021 23:09:51 +0000 (00:09 +0100)] 
scripts/release-notes.pl: use out of repo links verbatim in refs

4 years agotool_operate: a failed etag save now only fails that transfer
Daniel Stenberg [Tue, 2 Nov 2021 14:16:18 +0000 (15:16 +0100)] 
tool_operate: a failed etag save now only fails that transfer

When failing to create the output file for saving an etag, only fail
that particular single transfer and allow others to follow.

In a serial transfer setup, if no transfer at all is done due to them
all being skipped because of this error, curl will output an error
message and return exit code 26.

Added test 369 and 370 to verify.

Reported-by: Earnestly on github
Ref: #7942
Closes #7945

4 years ago.github: retry macos "brew install" command on failure
Kevin Burke [Wed, 3 Nov 2021 23:41:57 +0000 (16:41 -0700)] 
.github: retry macos "brew install" command on failure

Previously we saw errors attempting to run "brew install", see
https://github.com/curl/curl/runs/4095721123?check_suite_focus=true for
an example, since this command is idempotent, it is safe to run again.

Closes #7955

4 years agoCURLOPT_ALTSVC_CTRL.3: mention conn reuse is preferred
Daniel Stenberg [Thu, 4 Nov 2021 10:26:46 +0000 (11:26 +0100)] 
CURLOPT_ALTSVC_CTRL.3: mention conn reuse is preferred

Ref: https://github.com/curl/curl/discussions/7954

Closes #7957

4 years agoRELEASE-NOTES: synced
Daniel Stenberg [Wed, 3 Nov 2021 22:27:53 +0000 (23:27 +0100)] 
RELEASE-NOTES: synced

4 years agozuul: pin the quiche build to use an older cmake-rs
Daniel Stenberg [Wed, 3 Nov 2021 13:25:49 +0000 (14:25 +0100)] 
zuul: pin the quiche build to use an older cmake-rs

The latest cmake-rs assumes cmake's --parallel works. That was added in
cmake 3.12, but a lot of our CI builds run on Ubuntu Bionic which only
has cmake 3.10.

Fixes #7927
Closes #7952

4 years agoRevert "src/tool_filetime: disable -Wformat on mingw for this file"
Marc Hoersken [Mon, 1 Nov 2021 20:56:30 +0000 (21:56 +0100)] 
Revert "src/tool_filetime: disable -Wformat on mingw for this file"

This reverts commit 7c88fe375b15c44d77bccc9ab733b8069d228e6f.

Follow up to #6535 as the pragma is obsolete with warnf

Closes #7941

4 years agoschannel: fix memory leak due to failed SSL connection
Jay Satiro [Tue, 2 Nov 2021 19:34:04 +0000 (15:34 -0400)] 
schannel: fix memory leak due to failed SSL connection

- Call schannel_shutdown if the SSL connection fails.

Prior to this change schannel_shutdown (which shuts down the SSL
connection as well as memory cleanup) was not called when the SSL
connection failed (eg due to failed handshake).

Co-authored-by: Gisle Vanem
Fixes https://github.com/curl/curl/issues/7877
Closes https://github.com/curl/curl/pull/7878

4 years agoCurl_updateconninfo: store addresses for QUIC connections too
Daniel Stenberg [Tue, 2 Nov 2021 08:10:12 +0000 (09:10 +0100)] 
Curl_updateconninfo: store addresses for QUIC connections too

So that CURLINFO_PRIMARY_IP etc work for HTTP/3 like for other HTTP
versions.

Reported-by: Jerome Mao
Fixes #7939
Closes #7944

4 years agocurl.1: fix typos in the manpage
Sergio Durigan Junior [Mon, 1 Nov 2021 18:14:24 +0000 (14:14 -0400)] 
curl.1: fix typos in the manpage

s/transfering/transferring/
s/transfered/transferred/

Signed-off-by: Sergio Durigan Junior <sergiodj@sergiodj.net>
Closes #7937

4 years agotests/smbserver.py: fix compatibility with impacket 0.9.23+
Marc Hoersken [Mon, 1 Nov 2021 11:06:07 +0000 (12:06 +0100)] 
tests/smbserver.py: fix compatibility with impacket 0.9.23+

impacket now performs sanity checks if the requested and to
be served file path actually is inside the real share path.

Ref: https://github.com/SecureAuthCorp/impacket/pull/1066

Fixes #7924
Closes #7935

4 years agodocs: reduce use of "very"
Daniel Stenberg [Mon, 1 Nov 2021 12:43:11 +0000 (13:43 +0100)] 
docs: reduce use of "very"

"Very" should be avoided in most texts. If intensifiers are needed, try
find better words instead.

Closes #7936

4 years agongtcp2: specify the missing required callback functions
Tatsuhiro Tsujikawa [Sun, 31 Oct 2021 13:38:44 +0000 (22:38 +0900)] 
ngtcp2: specify the missing required callback functions

Closes #7929

4 years agoCURLOPT_[PROXY]_SSL_CIPHER_LIST.3: bold instead of quote
Daniel Stenberg [Mon, 1 Nov 2021 09:14:11 +0000 (10:14 +0100)] 
CURLOPT_[PROXY]_SSL_CIPHER_LIST.3: bold instead of quote

Bold the example ciphers instead of using single quotes, which then also
avoids the problem of how to use single quotes when first in a line.

Also rephrased the pages a little.

Reported-by: Sergio Durigan Junior
Ref: #7928
Closes #7934

4 years agogen.pl: replace leading single quotes with \(aq
Daniel Stenberg [Mon, 1 Nov 2021 08:55:28 +0000 (09:55 +0100)] 
gen.pl: replace leading single quotes with \(aq

... and allow single quotes to be used "normally" in the .d files.

Makes the output curl.1 use better nroff.

Reported-by: Sergio Durigan Junior
Ref: #7928
Closes #7933

4 years agotests: kill some test servers afterwards to avoid locked logfiles
Marc Hoersken [Fri, 29 Oct 2021 20:29:40 +0000 (22:29 +0200)] 
tests: kill some test servers afterwards to avoid locked logfiles

Reviewed-by: Daniel Stenberg
Closes #7925

4 years agosmooth-gtk-thread.c: enhance the mutex lock use
Daniel Stenberg [Sun, 31 Oct 2021 16:12:03 +0000 (17:12 +0100)] 
smooth-gtk-thread.c: enhance the mutex lock use

Reported-by: ryancaicse on github
Fixes #7926
Closes #7931

4 years agoCI/runtests.pl: restore -u flag, but remove it from CI runs
Marc Hoersken [Fri, 29 Oct 2021 10:04:25 +0000 (12:04 +0200)] 
CI/runtests.pl: restore -u flag, but remove it from CI runs

This makes it possible to use -u again for local testing,
but removes the flag from CI config files and make targets.

Reviewed-by: Daniel Stenberg
Partially reverts #7841
Closes #7921

4 years agoCURLOPT_HSTSWRITEFUNCTION.3: using CURLOPT_HSTS_CTRL is required
Jonathan Cardoso Machado [Fri, 29 Oct 2021 13:20:04 +0000 (10:20 -0300)] 
CURLOPT_HSTSWRITEFUNCTION.3: using CURLOPT_HSTS_CTRL is required

Closes #7923

4 years agoimap: display quota information
Axel Morawietz [Tue, 27 Apr 2021 01:52:54 +0000 (18:52 -0700)] 
imap: display quota information

Show response to "GETQUOTAROOT INBOX" command.

Closes #6973

4 years agoRELEASE-NOTES: synced
Daniel Stenberg [Thu, 28 Oct 2021 19:27:56 +0000 (21:27 +0200)] 
RELEASE-NOTES: synced

4 years agocmake: fix error getting LOCATION property on non-imported target
Boris Rasin [Wed, 20 Oct 2021 14:34:19 +0000 (17:34 +0300)] 
cmake: fix error getting LOCATION property on non-imported target

Closes #7885

4 years agourl: check the return value of curl_url()
x2018 [Thu, 28 Oct 2021 11:55:46 +0000 (19:55 +0800)] 
url: check the return value of curl_url()

Closes #7917

4 years agoconfigure.ac: replace krb5-config with pkg-config
Roy Li [Tue, 26 Apr 2016 05:13:01 +0000 (13:13 +0800)] 
configure.ac: replace krb5-config with pkg-config

The rationale is that custom *-config tools don't work well when
cross-compiling or using sysroots (such as when using Yocto project) and
require custom fixing for each of them; pkg-config on the other hand
works similarly everywhere.

Signed-off-by: Roy Li <rongqing.li@windriver.com>
Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Closes #7916

4 years agotest1160: edited to work with hyper
Daniel Stenberg [Wed, 27 Oct 2021 09:05:51 +0000 (11:05 +0200)] 
test1160: edited to work with hyper

Closes #7912

4 years agodata/DISABLED: enable tests that now work with hyper
Daniel Stenberg [Wed, 27 Oct 2021 07:35:43 +0000 (09:35 +0200)] 
data/DISABLED: enable tests that now work with hyper

Closes #7911

4 years agotest559: add 'HTTP' in keywords
Daniel Stenberg [Wed, 27 Oct 2021 08:04:58 +0000 (10:04 +0200)] 
test559: add 'HTTP' in keywords

Makes it run fine with hyper

Closes #7911

4 years agotest552: updated to work with hyper
Daniel Stenberg [Wed, 27 Oct 2021 07:35:28 +0000 (09:35 +0200)] 
test552: updated to work with hyper

Closes #7911

4 years agogithub: fix incomplete permission to label PRs for Hacktoberfest
Marc Hoersken [Wed, 27 Oct 2021 20:08:20 +0000 (22:08 +0200)] 
github: fix incomplete permission to label PRs for Hacktoberfest

Unfortunately the GitHub API requires a token with write permission
for both issues and pull-requests to edit labels on even just PRs.

Follow up to #7897

4 years agoopt-manpages: use 'Added in' instead of 'Since'
Daniel Stenberg [Wed, 27 Oct 2021 09:45:26 +0000 (11:45 +0200)] 
opt-manpages: use 'Added in' instead of 'Since'

Closes #7913

4 years agogithub: fix missing permission to label PRs for Hacktoberfest
Marc Hoersken [Wed, 27 Oct 2021 10:40:15 +0000 (12:40 +0200)] 
github: fix missing permission to label PRs for Hacktoberfest

Follow up to #7897

Test references to see if permissions are now sufficient:

Closes #7832
Closes #7897

4 years agoCI: more use of test-ci make target and verbose output
Marc Hoersken [Fri, 8 Oct 2021 18:43:19 +0000 (20:43 +0200)] 
CI: more use of test-ci make target and verbose output

Replace test-nonflaky with test-ci and enable verbose output
in all remaining CIs except Zuul which is customized a lot.

Reviewed-by: Daniel Stenberg
Reviewed-by: Jay Satiro
Follow up to #7785
Closes #7832

4 years agogithub: add support for Hacktoberfest using labels 7897/head
Marc Hoersken [Sat, 23 Oct 2021 19:30:03 +0000 (21:30 +0200)] 
github: add support for Hacktoberfest using labels

Automatically add hacktoberfest-accepted label to PRs opened between
September 30th and November 1st once a commit with a close reference
to it is pushed onto the master branch.

With this workflow we can participate in Hacktoberfest while not
relying on GitHub to identify PRs as merged due to our rebasing.

Requires hacktoberfest-accepted labels to exist for PRs on the
participating repository. Also requires hacktoberfest topic on
the participating repository to avoid applying to forked repos.

Reviewed-by: Daniel Stenberg
Fixes #7865
Closes #7897

4 years agohttp: reject HTTP response codes < 100
Daniel Stenberg [Tue, 26 Oct 2021 15:47:14 +0000 (17:47 +0200)] 
http: reject HTTP response codes < 100

... which then also includes negative ones as test 1430 uses.

This makes native + hyper backend act identically on this and therefore
test 1430 can now be enabled when building with hyper. Adjust test 1431
as well.

Closes #7909

4 years agodocs: fix typo in CURLOPT_TRAILERFUNCTION example
Kerem Kat [Tue, 26 Oct 2021 17:06:13 +0000 (17:06 +0000)] 
docs: fix typo in CURLOPT_TRAILERFUNCTION example

Closes #7910

4 years agodocs/HYPER: remove some remaining issues, add HTTP/0.9 limitation
Daniel Stenberg [Tue, 26 Oct 2021 15:26:21 +0000 (17:26 +0200)] 
docs/HYPER: remove some remaining issues, add HTTP/0.9 limitation

4 years agoconfigure: when hyper is selected, deselect nghttp2
Daniel Stenberg [Tue, 26 Oct 2021 10:56:26 +0000 (12:56 +0200)] 
configure: when hyper is selected, deselect nghttp2

Closes #7908

4 years agosendf: accept zero-length data in Curl_client_write()
Patrick Monnerat [Mon, 25 Oct 2021 11:54:57 +0000 (13:54 +0200)] 
sendf: accept zero-length data in Curl_client_write()

Historically, Curl_client_write() used a length value of 0 as a marker
for a null-terminated data string. This feature has been removed in
commit f4b85d2. To detect leftover uses of the feature, a DEBUGASSERT
statement rejecting a length with value 0 was introduced, effectively
precluding use of this function with zero-length data.

The current commit removes the DEBUGASSERT and makes the function to
return immediately if length is 0.

A direct effect is to fix trying to output a zero-length distinguished
name in openldap.

Another DEBUGASSERT statement is also rephrased for better readability.

Closes #7898

4 years agohyper: disable test 1294 since hyper doesn't allow such crazy headers
Daniel Stenberg [Mon, 25 Oct 2021 15:14:13 +0000 (17:14 +0200)] 
hyper: disable test 1294 since hyper doesn't allow such crazy headers

Closes #7905

4 years agoc-hyper: make CURLOPT_SUPPRESS_CONNECT_HEADERS work
Daniel Stenberg [Mon, 25 Oct 2021 15:10:21 +0000 (17:10 +0200)] 
c-hyper: make CURLOPT_SUPPRESS_CONNECT_HEADERS work

Verified by the enabled test 1288

Closes #7905

4 years agotest1287: make work on hyper
Daniel Stenberg [Mon, 25 Oct 2021 14:49:52 +0000 (16:49 +0200)] 
test1287: make work on hyper

Closes #7905

4 years agotest1266/1267: disabled on hyper: no HTTP/0.9 support
Daniel Stenberg [Mon, 25 Oct 2021 14:47:43 +0000 (16:47 +0200)] 
test1266/1267: disabled on hyper: no HTTP/0.9 support

Closes #7905

4 years agoMakefile.m32: fix to not require OpenSSL with -libssh2 or -rtmp options
Viktor Szakats [Mon, 25 Oct 2021 19:10:55 +0000 (19:10 +0000)] 
Makefile.m32: fix to not require OpenSSL with -libssh2 or -rtmp options

Previously, -libssh2/-rtmp options assumed that OpenSSL is also enabled
(and then failed with an error when not finding expected OpenSSL headers),
but this isn't necessarly true, e.g. when building both libssh2 and curl
against Schannel. This patch makes sure to only enable the OpenSSL backend
with -libssh2/-rtmp, when there was no SSL option explicitly selected.

- Re-implement the logic as a single block of script.
- Also fix an indentation while there.

Assisted-by: Jay Satiro
Closes #7895

4 years agodocs: consistent use of "Added in"
Daniel Stenberg [Mon, 25 Oct 2021 09:45:09 +0000 (11:45 +0200)] 
docs: consistent use of "Added in"

Make them all say "Added in [version]" without using 'curl' or 'libcurl'
in that phrase.

4 years agoman pages: require all to use the same section header order
Daniel Stenberg [Mon, 25 Oct 2021 06:54:08 +0000 (08:54 +0200)] 
man pages: require all to use the same section header order

This is the same order we already enforce among the options' man pages:
consistency is good. Add lots of previously missing examples.

Adjust the manpage-syntax script for this purpose, used in test 1173.

Closes #7904

4 years agodocs/HTTP3: improve build instructions
David Hu [Tue, 12 Oct 2021 01:38:01 +0000 (18:38 -0700)] 
docs/HTTP3: improve build instructions

1. If writing to a system path if the command is not prefixed with
`sudo` it will cause a permission denied error

2. The patched OpenSSL branch has been updated to `openssl-3.0.0+quic`
to match upstream OpenSSL version.

3. We should not disable GnuTLS docs.

Updated some commands about `make install`

Closes #7842

4 years agoCMake: restore support for SecureTransport on iOS
Ricardo Martins [Tue, 19 Oct 2021 12:56:02 +0000 (13:56 +0100)] 
CMake: restore support for SecureTransport on iOS

Restore support for building curl for iOS with SecureTransport enabled.

Closes #7501

4 years agotests: enable more tests with hyper
Daniel Stenberg [Sun, 24 Oct 2021 21:13:14 +0000 (23:13 +0200)] 
tests: enable more tests with hyper

Adjusted 1144, 1164 and 1176.

Closes #7900

4 years agodocs: provide "RETURN VALUE" section for more func manpages
Daniel Stenberg [Mon, 25 Oct 2021 05:50:25 +0000 (07:50 +0200)] 
docs: provide "RETURN VALUE" section for more func manpages

Three were missing, one used a non-standard name for the header.

Closes #7902

4 years agocurl_multi_socket_action.3: add a "RETURN VALUE" section
Jay Satiro [Sun, 24 Oct 2021 21:52:54 +0000 (17:52 -0400)] 
curl_multi_socket_action.3: add a "RETURN VALUE" section

.. because it may not be immediately clear to the user what
curl_multi_socket_action returns.

Ref: https://curl.se/mail/lib-2021-10/0035.html

Closes https://github.com/curl/curl/pull/7901

4 years agoRELEASE-NOTES: synced
Daniel Stenberg [Sun, 24 Oct 2021 19:28:39 +0000 (21:28 +0200)] 
RELEASE-NOTES: synced

4 years agotests: use python3 in test 1451
Samuel Henrique [Sun, 24 Oct 2021 17:18:26 +0000 (18:18 +0100)] 
tests: use python3 in test 1451

This is a continuation of commit ec91b5a69000bea0794bbb3 in which
changing this test was missed.  There are no other python2 leftovers
now.

Based on a Debian patch originally written by Alessandro Ghedini
<ghedo@debian.org>

Closes #7899

4 years agolib: fixing comment spelling typos in lib files
Eddie Lumpkin [Fri, 22 Oct 2021 18:59:11 +0000 (18:59 +0000)] 
lib: fixing comment spelling typos in lib files

Closes #7894
Signed-off-by: ewlumpkin <ewlumpkin@gmail.com>
4 years agoopenssl: if verifypeer is not requested, skip the CA loading
Daniel Stenberg [Fri, 22 Oct 2021 10:34:34 +0000 (12:34 +0200)] 
openssl: if verifypeer is not requested, skip the CA loading

It was previously done mostly to show a match/non-match in the verbose
output even when verification was not asked for. This change skips the
loading of the CA certs unless verifypeer is set to save memory and CPU.

Closes #7892

4 years agocurl-confopts.m4: remove --enable/disable-hidden-symbols
Daniel Stenberg [Fri, 22 Oct 2021 07:13:30 +0000 (09:13 +0200)] 
curl-confopts.m4:  remove --enable/disable-hidden-symbols

These configure options have been saying "deprecated" since 9e24b9c7af
(April 2012). It was about time we remove them.

Closes #7891

4 years agoc-hyper: don't abort CONNECT responses early when auth-in-progress
Daniel Stenberg [Fri, 22 Oct 2021 08:57:54 +0000 (10:57 +0200)] 
c-hyper: don't abort CONNECT responses early when auth-in-progress

... and make sure to stop ignoring the body once the CONNECT is done.

This should make test 206 work proper again and not be flaky.

Closes #7889

4 years agohyper: does not support disabling CURLOPT_HTTP_TRANSFER_DECODING
Daniel Stenberg [Fri, 22 Oct 2021 06:44:14 +0000 (08:44 +0200)] 
hyper: does not support disabling CURLOPT_HTTP_TRANSFER_DECODING

Simply because hyper doesn't have this ability. Mentioned in docs now.

Skip test 326 then

Closes #7889

4 years agotest262: don't attempt with hyper
Daniel Stenberg [Thu, 21 Oct 2021 20:30:37 +0000 (22:30 +0200)] 
test262: don't attempt with hyper

This test verifies that curl works with binary zeroes in HTTP response
headers and hyper refuses such. They're not kosher http.

Closes #7889

4 years agoc-hyper: make test 217 run
Daniel Stenberg [Thu, 21 Oct 2021 17:44:29 +0000 (19:44 +0200)] 
c-hyper: make test 217 run

Closes #7889

4 years agoDISABLED: enable test 209+213 for hyper
Daniel Stenberg [Thu, 21 Oct 2021 15:37:56 +0000 (17:37 +0200)] 
DISABLED: enable test 209+213 for hyper

Follow-up to 823d3ab855c

Closes #7889

4 years agotest207: accept a different error code for hyper
Daniel Stenberg [Thu, 21 Oct 2021 15:36:19 +0000 (17:36 +0200)] 
test207: accept a different error code for hyper

It returns HYPERE_UNEXPECTED_EOF for this case which we convert to the
somewhat generic CURLE_RECV_ERROR.

Closes #7889

4 years agoINSTALL: update symbol hiding option
Érico Nogueira [Thu, 21 Oct 2021 19:57:33 +0000 (16:57 -0300)] 
INSTALL: update symbol hiding option

--enable-hidden-symbols was deprecated in
9e24b9c7afbcb81120af4cf3f6cdee49a06d8224.

Closes #7890

4 years agohttp_proxy: multiple CONNECT with hyper done better
Daniel Stenberg [Thu, 21 Oct 2021 14:42:42 +0000 (16:42 +0200)] 
http_proxy: multiple CONNECT with hyper done better

Enabled test 206

Closes #7888

4 years agohyper: pass the CONNECT line to the debug callback
Daniel Stenberg [Thu, 21 Oct 2021 14:03:11 +0000 (16:03 +0200)] 
hyper: pass the CONNECT line to the debug callback

Closes #7887

4 years agomailmap: Malik Idrees Hasan Khan
Daniel Stenberg [Thu, 21 Oct 2021 07:43:51 +0000 (09:43 +0200)] 
mailmap: Malik Idrees Hasan Khan

4 years agobuild: fix typos
MalikIdreesHasa [Thu, 21 Oct 2021 05:41:22 +0000 (05:41 +0000)] 
build: fix typos

Closes https://github.com/curl/curl/pull/7886

4 years agoURL-SYNTAX: add IMAP UID SEARCH example
Jay Satiro [Tue, 19 Oct 2021 19:37:19 +0000 (15:37 -0400)] 
URL-SYNTAX: add IMAP UID SEARCH example

- Explain the difference between IMAP search via URL (which returns
  message sequence numbers) and IMAP search via custom request (which
  can return UID numbers if prefixed with UID, eg "UID SEARCH ...").

Bug: https://github.com/curl/curl/issues/7626
Reported-by: orycho@users.noreply.github.com
Ref: https://github.com/curl/curl/issues/2789

Closes https://github.com/curl/curl/pull/7881

4 years agomanpage: adjust the asterisk in some SYNOPSIS sections
Daniel Stenberg [Wed, 20 Oct 2021 14:00:46 +0000 (16:00 +0200)] 
manpage: adjust the asterisk in some SYNOPSIS sections

Closes #7884

4 years agocurl_multi_perform.3: polish wording
Daniel Stenberg [Wed, 20 Oct 2021 06:49:17 +0000 (08:49 +0200)] 
curl_multi_perform.3: polish wording

 - simplify the example by using curl_multi_poll

 - mention curl_multi_add_handle in the text

 - cut out the description of pre-7.20.0 return code behavior - that version
   is now more than eleven years old and is basically no longer out there

 - adjust the "typical usage" to mention curl_multi_poll

Closes #7883

4 years agodocs/THANKS: removed on request
Daniel Stenberg [Wed, 20 Oct 2021 08:42:52 +0000 (10:42 +0200)] 
docs/THANKS: removed on request

4 years agoFAQ: polish the explanation of libcurl
Daniel Stenberg [Wed, 20 Oct 2021 07:24:18 +0000 (09:24 +0200)] 
FAQ: polish the explanation of libcurl

4 years agocurl_easy_perform.3: minor wording tweak
Daniel Stenberg [Wed, 20 Oct 2021 06:41:06 +0000 (08:41 +0200)] 
curl_easy_perform.3: minor wording tweak