]> git.ipfire.org Git - thirdparty/curl.git/log
thirdparty/curl.git
3 years agolibssh: fix build with old libssh versions
Daniel Stenberg [Thu, 10 Mar 2022 16:47:22 +0000 (17:47 +0100)] 
libssh: fix build with old libssh versions

... that don't have the SSH_S_* defines. Spotted on a machine using
libssh 0.7.3

Closes #8574

3 years agohyper: fix status_line() return code
Daniel Stenberg [Thu, 10 Mar 2022 15:55:54 +0000 (16:55 +0100)] 
hyper: fix status_line() return code

Detected while working on #7708 that happened to trigger an error here
with a new test case.

Closes #8572

3 years agoconfigure.ac: move -pthread CFLAGS setting back where it used to be
Alejandro R. Sedeño [Sat, 5 Mar 2022 14:46:38 +0000 (09:46 -0500)] 
configure.ac: move -pthread CFLAGS setting back where it used to be

The fix for #8276 proposed in #8374 set `CFLAGS="$CFLAGS -pthead"`
earlier than it used to be set, applying it in cases where it should not
have been applied.

This moves the AIX XLC check to a new `case $host in` block inside of
the `if test "$USE_THREADS_POSIX" != "1"` block, where `CFLAGS="$CFLAGS
-pthead"` used to happen.

Fixes #8541
Closes #8542

3 years agongtcp2: add client certificate authentication for OpenSSL
Tatsuhiro Tsujikawa [Mon, 28 Feb 2022 12:21:06 +0000 (21:21 +0900)] 
ngtcp2: add client certificate authentication for OpenSSL

Closes #8522

3 years agotool_operate: fix a scan-build warning
Daniel Stenberg [Wed, 9 Mar 2022 10:43:24 +0000 (11:43 +0100)] 
tool_operate: fix a scan-build warning

... and avoid the temp storing of the return code in a diff variable.

Closes #8565

3 years agotest375: verify that --proxy errors out if proxy is disabled in the build
Daniel Stenberg [Wed, 9 Mar 2022 09:39:41 +0000 (10:39 +0100)] 
test375: verify that --proxy errors out if proxy is disabled in the build

Closes #8565

3 years agocurl: error out when options need features not present in libcurl
Daniel Stenberg [Wed, 9 Mar 2022 09:00:21 +0000 (10:00 +0100)] 
curl: error out when options need features not present in libcurl

Trying to use a proxy when libcurl was built with proxy support disabled
should make curl error out properly.

Remove knowledge of disabled features from the tool code and instead
make it properly respond to what libcurl returns. Update all tests to
properly require the necessary features to be present/absent so that the
test suite can still be run even with libcurl builds with disabled
features.

Ref: https://curl.se/mail/archive-2022-03/0013.html
Closes #8565

3 years agongtcp2: disconnect the QUIC connection proper
Daniel Stenberg [Wed, 9 Mar 2022 13:16:47 +0000 (14:16 +0100)] 
ngtcp2: disconnect the QUIC connection proper

Reported-by: mehatzri on github
Reviewed-by: Tatsuhiro Tsujikawa
Fixes #8534
closes #8569

3 years agotest386: Fix an incorrect test markup tag
Dan Fandrich [Wed, 9 Mar 2022 17:49:20 +0000 (09:49 -0800)] 
test386: Fix an incorrect test markup tag

3 years agononblock: restore setsockopt method to curlx_nonblock
Don [Tue, 8 Mar 2022 18:44:34 +0000 (10:44 -0800)] 
nonblock: restore setsockopt method to curlx_nonblock

The implementation using setsockopt was removed when BeOS support was
purged. However this functionality wasn't BeOS specific, it is still
used by for example Orbis OS (Playstation 4/5 OS).

Closes #8562

3 years agoopenssl: fix CN check error code
Daniel Stenberg [Tue, 8 Mar 2022 12:38:13 +0000 (13:38 +0100)] 
openssl: fix CN check error code

Due to a missing 'else' this returns error too easily.

Regressed in: d15692ebb

Reported-by: Kristoffer Gleditsch
Fixes #8559
Closes #8560

3 years agoconnect: make Curl_getconnectinfo work with conn cache from share handle
Frank Meier [Wed, 23 Feb 2022 14:35:06 +0000 (15:35 +0100)] 
connect: make Curl_getconnectinfo work with conn cache from share handle

Closes #8524

3 years agoopenssl: enable CURLOPT_SSL_EC_CURVES with BoringSSL
lwthiker [Mon, 28 Feb 2022 09:05:34 +0000 (11:05 +0200)] 
openssl: enable CURLOPT_SSL_EC_CURVES with BoringSSL

The CURLOPT_SSL_EC_CURVES option (used by the '--curves' flag) in
libcurl was ignored when compiling with BoringSSL because
HAVE_SSL_CTX_SET_EC_CURVES was explicitly disabled if BoringSSL was
detected.  However, this feature is supported in BoringSSL since
5fd1807d. This commit enables it, and also reduces the required minimal
OpenSSL version to 1.0.2 as per OpenSSL's official documentation.

Fixes #8553
Closes #8556

3 years agojson.d: fix typo (overriden -> overridden)
Samuel Henrique [Mon, 7 Mar 2022 18:30:23 +0000 (18:30 +0000)] 
json.d: fix typo (overriden -> overridden)

Closes #8557

3 years agowolfssl: fix compiler error without IPv6
Daniel Stenberg [Mon, 7 Mar 2022 07:40:47 +0000 (08:40 +0100)] 
wolfssl: fix compiler error without IPv6

Reported-by: Joseph Chen
Fixes #8550
Closes #8552

3 years agoRELEASE-NOTES: synced
Daniel Stenberg [Mon, 7 Mar 2022 08:03:36 +0000 (09:03 +0100)] 
RELEASE-NOTES: synced

and bump pending version to 7.82.1

3 years agoruntests: make 'oldlibssh' be before 0.9.4
Paul Howarth [Sun, 6 Mar 2022 13:13:34 +0000 (13:13 +0000)] 
runtests: make 'oldlibssh' be before 0.9.4

The 'oldlibssh' feature indicates that the error code returned by libssh
for a broken known_hosts file should be 67 rather than 60 (test1459).
This feature was added as part of #8444 with 'oldlibssh' mapping to
libssh versions prior to 0.9.6, and then refined as part of #8511 to map
to versions prior to 0.9.5.

In Red Hat Enterprise Linux 8.5 there is a patched version of libssh
version 0.9.4 (https://git.centos.org/rpms/libssh/blob/c8/f/SOURCES) in
which test1459 fails because it returns the "new" value rather than the
"old" one. It's plausible that one of the patches is responsible for
this rather than the underlying code but I don't think so.

This change therefore drops the 'oldlibssh' version check to map to
libssh versions older than 0.9.4, which fixes builds on RHEL-8.

Closes #8548

3 years agoipv4/6.d: clarify that they are about using IP addresses
Daniel Stenberg [Sat, 5 Mar 2022 16:24:02 +0000 (17:24 +0100)] 
ipv4/6.d: clarify that they are about using IP addresses

... they may still *resolve* other families, but not use those
addresses.

Ref: #8530
Closes #8543

3 years agocurl/system.h: update ifdef condition for MCST-LCC compiler
r-a-sattarov [Sat, 5 Mar 2022 22:21:04 +0000 (01:21 +0300)] 
curl/system.h: update ifdef condition for MCST-LCC compiler

in mcst-lcc compiler => 1.25 added a new macro definition to determine
compiler

Closes #8546

3 years agoCI: install Python package impacket to run SMB test 1451
Marc Hoersken [Mon, 13 Dec 2021 19:51:19 +0000 (20:51 +0100)] 
CI: install Python package impacket to run SMB test 1451

Install Python package impacket in relevant CI workflows.

Follow up to #7935
Supersedes #7940
Closes #8544

3 years agoconnect: use TCP_KEEPALIVE only if TCP_KEEPIDLE is not defined
MAntoniak [Wed, 2 Mar 2022 22:36:38 +0000 (23:36 +0100)] 
connect: use TCP_KEEPALIVE only if TCP_KEEPIDLE is not defined

Closes #8539

3 years agodocs/HYPER.md: updated to reflect current hyper build needs
Daniel Stenberg [Sat, 5 Mar 2022 22:21:58 +0000 (23:21 +0100)] 
docs/HYPER.md: updated to reflect current hyper build needs

3 years agoGHA: build hyper with nightly rustc
Daniel Stenberg [Sat, 5 Mar 2022 22:17:56 +0000 (23:17 +0100)] 
GHA: build hyper with nightly rustc

Closes #8545

3 years agoRELEASE-NOTES: synced curl-7_82_0
Daniel Stenberg [Sat, 5 Mar 2022 08:41:24 +0000 (09:41 +0100)] 
RELEASE-NOTES: synced

The 7.82.0 release

3 years agoTHANKS: updates from the 7.82.0 release notes
Daniel Stenberg [Sat, 5 Mar 2022 08:41:24 +0000 (09:41 +0100)] 
THANKS: updates from the 7.82.0 release notes

3 years agomisc: update copyright year ranges
Daniel Stenberg [Sat, 5 Mar 2022 08:41:24 +0000 (09:41 +0100)] 
misc: update copyright year ranges

3 years agounit1610: init SSL library before calling SHA256 functions
Jay Satiro [Fri, 4 Mar 2022 23:34:06 +0000 (18:34 -0500)] 
unit1610: init SSL library before calling SHA256 functions

The SSL library must be initialized (via global initialization) because
libcurl's SHA256 functions may call SHA256 functions in the SSL library.

Reported-by: Gisle Vanem
Fixes https://github.com/curl/curl/issues/8538
Closes https://github.com/curl/curl/pull/8540

3 years agoexamples/curlx: support building with OpenSSL 1.1.0+
Jay Satiro [Tue, 1 Mar 2022 23:17:46 +0000 (18:17 -0500)] 
examples/curlx: support building with OpenSSL 1.1.0+

- Access members of X509_STORE_CTX in OpenSSL 1.1.0+ by using API
  functions.

The X509_STORE_CTX struct has been opaque since OpenSSL 1.1.0.

Ref: https://curl.se/mail/lib-2022-03/0004.html

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

3 years agoh2h3: fix typo
Jay Satiro [Tue, 1 Mar 2022 18:09:02 +0000 (13:09 -0500)] 
h2h3: fix typo

Bug: https://github.com/curl/curl/issues/8381#issuecomment-1055440241
Reported-by: Michael Kaufmann
3 years agoCURLOPT_XFERINFOFUNCTION.3: fix example struct assignment
Farzin [Sun, 27 Feb 2022 14:13:52 +0000 (17:43 +0330)] 
CURLOPT_XFERINFOFUNCTION.3: fix example struct assignment

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

3 years agoazure-pipelines: add a build on Windows with libssh
Daniel Stenberg [Fri, 25 Feb 2022 12:56:28 +0000 (13:56 +0100)] 
azure-pipelines: add a build on Windows with libssh

Closes #8511

3 years agoruntests: make 'oldlibssh' be before 0.9.5
Daniel Stenberg [Fri, 25 Feb 2022 15:17:04 +0000 (16:17 +0100)] 
runtests: make 'oldlibssh' be before 0.9.5

Closes #8511

3 years agolibssh: fix include files and defines use for Windows builds
Daniel Stenberg [Fri, 25 Feb 2022 12:30:16 +0000 (13:30 +0100)] 
libssh: fix include files and defines use for Windows builds

Reported-by: 梦终无痕
Bug: https://curl.se/mail/lib-2022-02/0131.html
Closes #8511

3 years agoRELEASE-NOTES: synced
Daniel Stenberg [Sat, 26 Feb 2022 15:14:16 +0000 (16:14 +0100)] 
RELEASE-NOTES: synced

3 years agowinbuild: add parameter WITH_SSH
illusory-dream [Fri, 25 Feb 2022 18:07:00 +0000 (02:07 +0800)] 
winbuild: add parameter WITH_SSH

For building with libssh
Closes #8514

3 years agoconfigure: change output for cross-compiled alt-svc support
Daniel Stenberg [Fri, 25 Feb 2022 13:20:10 +0000 (14:20 +0100)] 
configure: change output for cross-compiled alt-svc support

It said 'no', while it actually is 'yes'

Closes #8512

3 years agogha: add a macOS CI job with libssh
Daniel Stenberg [Fri, 25 Feb 2022 13:31:25 +0000 (14:31 +0100)] 
gha: add a macOS CI job with libssh

Closes #8513

3 years agoTODO: remove "Bring back libssh tests on Travis"
Daniel Stenberg [Fri, 25 Feb 2022 10:39:47 +0000 (11:39 +0100)] 
TODO: remove "Bring back libssh tests on Travis"

The job was added to Circle CI in d8ddd0e7536

3 years agoTODO: remove "better persistency for HTTP/1.0"
Daniel Stenberg [Fri, 25 Feb 2022 10:36:02 +0000 (11:36 +0100)] 
TODO: remove "better persistency for HTTP/1.0"

Let's not bother.

3 years agoTODO: remove "Option to ignore private IP"
Daniel Stenberg [Fri, 25 Feb 2022 10:35:23 +0000 (11:35 +0100)] 
TODO: remove "Option to ignore private IP"

... as curl ignores the IP entirely by default these days.

3 years agoTODO: remove "hardcode the "localhost" addresses"
Daniel Stenberg [Fri, 25 Feb 2022 10:33:29 +0000 (11:33 +0100)] 
TODO: remove "hardcode the "localhost" addresses"

This is implmented since 1a0ebf6632f88

3 years agoTODO: 1.24 was a dupe of 1.1
Daniel Stenberg [Fri, 25 Feb 2022 10:32:48 +0000 (11:32 +0100)] 
TODO: 1.24 was a dupe of 1.1

3 years agoTODO: remove "Typesafe curl_easy_setopt()"
Daniel Stenberg [Fri, 25 Feb 2022 10:31:11 +0000 (11:31 +0100)] 
TODO: remove "Typesafe curl_easy_setopt()"

I don't consider this a serious TODO item

3 years agoKNOWN_BUGS: remove "Uploading HTTP/3 files gets interrupted"
Daniel Stenberg [Fri, 25 Feb 2022 10:15:53 +0000 (11:15 +0100)] 
KNOWN_BUGS: remove "Uploading HTTP/3 files gets interrupted"

This works now

3 years agoKNOWN_BUGS: remove "HTTP/3 multipart POST with quiche fails"
Daniel Stenberg [Fri, 25 Feb 2022 10:14:27 +0000 (11:14 +0100)] 
KNOWN_BUGS: remove "HTTP/3 multipart POST with quiche fails"

It works now

3 years agoquiche: remove two leftover debug infof() outputs
Daniel Stenberg [Fri, 25 Feb 2022 10:13:49 +0000 (11:13 +0100)] 
quiche: remove two leftover debug infof() outputs

3 years agongtcp2: Reset dynbuf when it is fully drained
Tatsuhiro Tsujikawa [Thu, 24 Feb 2022 10:06:43 +0000 (19:06 +0900)] 
ngtcp2: Reset dynbuf when it is fully drained

Reported-by: vl409 on github
Fixes #7351
Closes #8504

3 years agohostip: avoid unused parameter error in Curl_resolv_check
Stewart Gebbie [Thu, 24 Feb 2022 11:06:11 +0000 (13:06 +0200)] 
hostip: avoid unused parameter error in Curl_resolv_check

When built without DNS-over-HTTP and without asynchronous resolvers,
neither the dns nor the data parameters are used.

That is Curl_resolv_check appears to call
Curl_resolver_is_resolved(data, dns). But,
with CURL_DISABLE_DOH without CURLRES_ASYNCH, the call is actually
elided via a macro definition.

This fix resolves the resultant: "unused parameter 'data'" error.

Closes #8505

3 years agohttp2: move two infof calls to debug-h2-only
Daniel Stenberg [Thu, 24 Feb 2022 08:28:12 +0000 (09:28 +0100)] 
http2: move two infof calls to debug-h2-only

and remove a superflous one

Ref: https://github.com/curl/curl/discussions/8498
Closes #8502

3 years agoquiche: fix upload for bigger content-length
Jean-Philippe Menil [Wed, 9 Feb 2022 21:43:13 +0000 (22:43 +0100)] 
quiche: fix upload for bigger content-length

Signed-off-by: Jean-Philippe Menil <jpmenil@gmail.com>
Closes #8421

3 years agoCURLOPT_PROGRESSFUNCTION.3: fix example struct assignment
Farzin [Wed, 23 Feb 2022 07:47:15 +0000 (11:17 +0330)] 
CURLOPT_PROGRESSFUNCTION.3: fix example struct assignment

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

3 years agoOS400/README: clarify compilation steps
Rob Boeckermann [Tue, 22 Feb 2022 01:16:31 +0000 (17:16 -0800)] 
OS400/README: clarify compilation steps

Closes #8494

3 years agoOS400: fix typos in rpg include file
Rob Boeckermann [Tue, 22 Feb 2022 01:03:16 +0000 (17:03 -0800)] 
OS400: fix typos in rpg include file

This resolves issues compiling rpg code that includes the curl header
file.

Closes #8494

3 years agovtls: fix socket check conditions
MAntoniak [Mon, 21 Feb 2022 17:44:58 +0000 (18:44 +0100)] 
vtls: fix socket check conditions

fix condition to check the second socket during associate and
disassociate connection

Closes #8493

3 years agolibssh2: don't typecast socket to int for libssh2_session_handshake
Daniel Stenberg [Mon, 21 Feb 2022 13:55:31 +0000 (14:55 +0100)] 
libssh2: don't typecast socket to int for libssh2_session_handshake

Since libssh2_socket_t uses SOCKET on windows which can be larger than
int.

Closes #8492

3 years agoRELEASE-NOTES: fix typo and make one desc shorter
Daniel Stenberg [Mon, 21 Feb 2022 10:09:52 +0000 (11:09 +0100)] 
RELEASE-NOTES: fix typo and make one desc shorter

3 years agoRELEASE-NOTES: synced
Daniel Stenberg [Mon, 21 Feb 2022 10:00:34 +0000 (11:00 +0100)] 
RELEASE-NOTES: synced

3 years agoCURLOPT_XFERINFOFUNCTION.3: fix typo in example
Daniel Stenberg [Mon, 21 Feb 2022 09:09:59 +0000 (10:09 +0100)] 
CURLOPT_XFERINFOFUNCTION.3: fix typo in example

Reported-by: coralw on github
Fixes #8487
Closes #8488

3 years agoREADME: disable linkchecks for the sponsor links
Daniel Stenberg [Mon, 21 Feb 2022 09:19:27 +0000 (10:19 +0100)] 
README: disable linkchecks for the sponsor links

Closes #8489

3 years agoopenssl: check if sessionid flag is enabled before retrieving session
Jay Satiro [Sun, 20 Feb 2022 21:30:08 +0000 (16:30 -0500)] 
openssl: check if sessionid flag is enabled before retrieving session

Ideally, Curl_ssl_getsessionid should not be called unless sessionid
caching is enabled. There is a debug assertion in the function to help
ensure that. Therefore, the pattern in all vtls is basically:

  if(primary.sessionid) {lock(); Curl_ssl_getsessionid(...); unlock();}

There was one instance in openssl.c where sessionid was not checked
beforehand and this change fixes that.

Prior to this change an assertion would occur in openssl debug builds
during connection stage if session caching was disabled.

Reported-by: Jim Beveridge
Fixes https://github.com/curl/curl/issues/8472
Closes https://github.com/curl/curl/pull/8484

3 years agomulti: allow user callbacks to call curl_multi_assign
Jay Satiro [Sun, 20 Feb 2022 21:04:07 +0000 (16:04 -0500)] 
multi: allow user callbacks to call curl_multi_assign

Several years ago a change was made to block user callbacks from calling
back into the API when not supported (recursive calls). One of the calls
blocked was curl_multi_assign. Recently the blocking was extended to the
multi interface API, however curl_multi_assign may need to be called
from within those user callbacks (eg CURLMOPT_SOCKETFUNCTION).

I can't think of any callback where it would be unsafe to call
curl_multi_assign so I removed the restriction entirely.

Reported-by: Michael Wallner
Ref: https://github.com/curl/curl/commit/b46cfbc
Ref: https://github.com/curl/curl/commit/340bb19

Fixes https://github.com/curl/curl/issues/8480
Closes https://github.com/curl/curl/pull/8483

3 years agossl: reduce allocated space for ssl backend when FTP is disabled
MAntoniak [Thu, 17 Feb 2022 16:48:48 +0000 (17:48 +0100)] 
ssl: reduce allocated space for ssl backend when FTP is disabled

Add assert() for the backend pointer in many places

Closes #8471

3 years agocheckprefix: remove strlen calls
MAntoniak [Sun, 20 Feb 2022 14:16:07 +0000 (15:16 +0100)] 
checkprefix: remove strlen calls

Closes #8481

3 years agocurl.h: fix typo
1337vt [Sun, 20 Feb 2022 17:25:50 +0000 (11:25 -0600)] 
curl.h: fix typo

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

3 years agosectransp: mark a 3DES cipher as weak
Jan Venekamp [Sat, 19 Feb 2022 14:44:17 +0000 (15:44 +0100)] 
sectransp: mark a 3DES cipher as weak

- Change TLS_ECDH_ECDSA_WITH_3DES_EDE_CBC_SHA strength to weak.

All other 3DES ciphers are already marked as weak.

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

3 years agobearssl: fix EXC_BAD_ACCESS on incomplete CA cert
Jan Venekamp [Mon, 6 Dec 2021 17:35:55 +0000 (18:35 +0100)] 
bearssl: fix EXC_BAD_ACCESS on incomplete CA cert

- Do not create trust anchor object for a CA certificate until after it
  is processed.

Prior to this change the object was created at state BR_PEM_BEGIN_OBJ
(certificate processing begin state). An incomplete certificate (for
example missing a newline at the end) never reaches BR_PEM_END_OBJ
(certificate processing end state) and therefore the trust anchor data
was not set in those objects, which caused EXC_BAD_ACCESS.

Ref: https://github.com/curl/curl/pull/8106

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

3 years agobearssl: fix connect error on expired cert and no verify
Jan Venekamp [Mon, 6 Dec 2021 17:36:01 +0000 (18:36 +0100)] 
bearssl: fix connect error on expired cert and no verify

- When peer verification is disabled use the x509_decode engine instead
  of the x509_minimal engine to parse and extract the public key from
  the first cert of the chain.

Prior to this change in such a case no key was extracted and that caused
CURLE_SSL_CONNECT_ERROR. The x509_minimal engine will stop parsing if
any validity check fails but the x509_decode won't.

Ref: https://github.com/curl/curl/pull/8106

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

3 years agobearssl: fix session resumption (session id)
Jan Venekamp [Mon, 6 Dec 2021 17:35:20 +0000 (18:35 +0100)] 
bearssl: fix session resumption (session id)

Prior to this change br_ssl_client_reset was mistakenly called with
resume_session param set to 0, which disabled session resumption.

Ref: https://github.com/curl/curl/pull/8106

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

3 years agoopenssl: fix build for version < 1.1.0
MAntoniak [Thu, 17 Feb 2022 20:29:15 +0000 (21:29 +0100)] 
openssl: fix build for version < 1.1.0

Closes #8470

3 years agoschannel: move the algIds array out of schannel.h
Joel Depooter [Thu, 17 Feb 2022 19:33:17 +0000 (11:33 -0800)] 
schannel: move the algIds array out of schannel.h

This array is only used by the SCHANNEL_CRED struct in the
schannel_acquire_credential_handle function. It can therefore be kept as
a local variable. This is a minor update to
bbb71507b7bab52002f9b1e0880bed6a32834511.

This change also updates the NUM_CIPHERS value to accurately count the
number of ciphers options listed in schannel.c, which is 47 instead of
45. It is unlikely that anyone tries to set all 47 values, but if they
had tried, the last two would not have been set.

Closes #8469

3 years agoconfigure.ac: use user-specified gssapi dir when using pkg-config
Alejandro R. Sedeño [Wed, 16 Feb 2022 17:56:02 +0000 (12:56 -0500)] 
configure.ac: use user-specified gssapi dir when using pkg-config

Using the system pkg-config path in the face of a user-specified
library path is asking to link the wrong library.

Reported-by: Michael Kaufmann
Fixes #8289
Closes #8456

3 years agoos400: Add link to QADRT devkit to README.OS400
Kevin Adler [Mon, 24 Jan 2022 23:06:23 +0000 (17:06 -0600)] 
os400: Add link to QADRT devkit to README.OS400

Closes #8455

3 years agoos400: Add function wrapper for system command
Kevin Adler [Mon, 24 Jan 2022 22:45:48 +0000 (16:45 -0600)] 
os400: Add function wrapper for system command

The wrapper will exit if the system command failed instead of blindly
continuing on.

In addition, only copy docs which exist, since now the copy failure will
cause the build to stop.

Closes #8455

3 years agoos400: Default build to target current release
Kevin Adler [Mon, 24 Jan 2022 22:44:26 +0000 (16:44 -0600)] 
os400: Default build to target current release

V6R1M0 is not available as a target release since IBM i 7.2. To keep
from having to keep this up to date in git, default to the current
release. Users can configure this to whatever release they want to
actually build for.

Closes #8455

3 years agodocs/INTERNALS.md: clean up, refer to the book
Daniel Stenberg [Thu, 17 Feb 2022 09:49:05 +0000 (10:49 +0100)] 
docs/INTERNALS.md: clean up, refer to the book

The explanatory parts are now in the everything curl book (which can
also use images etc). This document now refers to that resource and only
leaves listings of supported versions of libs, tools and operating
systems. See https://everything.curl.dev/internals

Closes #8467

3 years agodes: fix compile break for OpenSSL without DES
Marcel Raad [Wed, 16 Feb 2022 08:19:58 +0000 (09:19 +0100)] 
des: fix compile break for OpenSSL without DES

When `USE_OPENSSL` was defined but OpenSSL had no DES support and a
different crypto library was used for that, `Curl_des_set_odd_parity`
was called but not defined. This could for example happen on Windows
and macOS when using OpenSSL v3 with deprecated features disabled.

Use the same condition for the function definition as used at the
caller side, but leaving out the OpenSSL part to avoid including
OpenSSL headers.

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

3 years agoRELEASE-NOTES: synced
Daniel Stenberg [Thu, 17 Feb 2022 10:03:27 +0000 (11:03 +0100)] 
RELEASE-NOTES: synced

3 years agodocs/DEPRECATE: remove NPN support in August 2022
Daniel Stenberg [Wed, 16 Feb 2022 10:22:25 +0000 (11:22 +0100)] 
docs/DEPRECATE: remove NPN support in August 2022

Closes #8458

3 years agoftp: provide error message for control bytes in path
Daniel Stenberg [Wed, 16 Feb 2022 12:53:00 +0000 (13:53 +0100)] 
ftp: provide error message for control bytes in path

Closes #8460

3 years agohttp: fix "unused parameter ‘conn’" warning
Daniel Stenberg [Wed, 16 Feb 2022 22:04:07 +0000 (23:04 +0100)] 
http: fix "unused parameter ‘conn’" warning

Follow-up from 7d600ad1c395

Spotted on appveyor

Closes #8465

3 years agosha256: Fix minimum OpenSSL version
Alejandro R. Sedeño [Wed, 16 Feb 2022 21:57:13 +0000 (16:57 -0500)] 
sha256: Fix minimum OpenSSL version

- Change the minimum OpenSSL version for using their SHA256
  implementation from 0.9.7 to 0.9.8.

EVP_sha256() does not appear in the OpenSSL source before 0.9.7h, and
does not get built by default until 0.9.8, so trying to use it for all
0.9.7 is wrong, and before 0.9.8 is unreliable.

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

3 years agoKNOWN_BUGS: remove "slow connect to localhost on Windows"
Daniel Stenberg [Wed, 16 Feb 2022 13:05:00 +0000 (14:05 +0100)] 
KNOWN_BUGS: remove "slow connect to localhost on Windows"

localhost is not resolved anymore since 1a0ebf6632f88

3 years agoKNOWN_BUGS: remove "HTTP/3 download is 5x times slower than HTTP/2"
Daniel Stenberg [Wed, 16 Feb 2022 12:46:04 +0000 (13:46 +0100)] 
KNOWN_BUGS: remove "HTTP/3 download is 5x times slower than HTTP/2"

It's not actually a bug. More like room for improvement.

3 years agoKNOWN_BUGS: remove "HTTP/3 download with quiche halts after a while"
Daniel Stenberg [Wed, 16 Feb 2022 12:35:18 +0000 (13:35 +0100)] 
KNOWN_BUGS: remove "HTTP/3 download with quiche halts after a while"

Follow-up to 96f85a0fef694

3 years agoKNOWN_BUGS: remove "pulseUI vpn" as a problem
Daniel Stenberg [Wed, 16 Feb 2022 12:32:19 +0000 (13:32 +0100)] 
KNOWN_BUGS: remove "pulseUI vpn" as a problem

We haven't heard about this for a long time and rumours have it they
might have fixed it.

3 years agourldata: remove conn->bits.user_passwd
Daniel Stenberg [Mon, 14 Feb 2022 16:33:50 +0000 (17:33 +0100)] 
urldata: remove conn->bits.user_passwd

The authentication status should be told by the transfer and not the
connection.

Reported-by: John H. Ayad
Fixes #8449
Closes #8451

3 years agogskit: Convert to using Curl_poll
Kevin Adler [Mon, 24 Jan 2022 22:59:03 +0000 (16:59 -0600)] 
gskit: Convert to using Curl_poll

As mentioned in 32766cb, gskit was the last user of Curl_select which is
now gone. Convert to using Curl_poll to allow build to work on IBM i.

Closes #8454

3 years agogskit: Fix initialization of Curl_ssl_gskit struct
Kevin Adler [Mon, 24 Jan 2022 22:56:38 +0000 (16:56 -0600)] 
gskit: Fix initialization of Curl_ssl_gskit struct

In c30bf22, Curl_ssl_getsock was factored out in to a member of
struct Curl_ssl but the gskit initialization was not updated to reflect
this new member.

Closes #8454

3 years agogskit: Fix errors from Curl_strerror refactor
Kevin Adler [Mon, 24 Jan 2022 22:50:36 +0000 (16:50 -0600)] 
gskit: Fix errors from Curl_strerror refactor

2f0bb864c1 replaced sterror with Curl_strerror, but the strerror buffer
shadows the set_buffer "buffer" parameter. To keep consistency with the
other functions that use Curl_strerror, rename the parameter.

In addition, strerror.h is needed for the definition of STRERROR_LEN.

Closes #8454

3 years agontlm: remove unused feature defines 8453/head
Marcel Raad [Tue, 15 Feb 2022 12:50:06 +0000 (13:50 +0100)] 
ntlm: remove unused feature defines

They're not used anymore and always supported.

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

3 years agoREADME.md: fix link and layout
Kantanat Wannapaka [Mon, 14 Feb 2022 08:48:42 +0000 (15:48 +0700)] 
README.md: fix link and layout

replace <a></a> tags and <img></img> tags

Closes #8448

3 years agoKNOWN_BUGS: fix typo "libpsl"
Daniel Stenberg [Mon, 14 Feb 2022 20:18:45 +0000 (21:18 +0100)] 
KNOWN_BUGS: fix typo "libpsl"

3 years agoh2h3: fix compiler warning due to function prototype mismatch
Jay Satiro [Mon, 14 Feb 2022 21:45:14 +0000 (16:45 -0500)] 
h2h3: fix compiler warning due to function prototype mismatch

- Add missing const qualifier in Curl_pseudo_headers declaration.

3 years agourlapi: handle "redirects" smarter
Stefan Eissing [Mon, 14 Feb 2022 10:43:04 +0000 (11:43 +0100)] 
urlapi: handle "redirects" smarter

  - avoid one malloc when setting a new url via curl_url_set()
    and CURLUPART_URL.
  - extract common pattern into a new static function.

Closes #8450

3 years agocijobs: pick up circleci configure lines better
Daniel Stenberg [Mon, 14 Feb 2022 08:48:05 +0000 (09:48 +0100)] 
cijobs: pick up circleci configure lines better

3 years agocircleci: add a job using wolfSSH
Daniel Stenberg [Sat, 12 Feb 2022 22:14:16 +0000 (23:14 +0100)] 
circleci: add a job using wolfSSH

Build only, no tests.

Closes #8445

3 years agoscripts/ciconfig.pl: show used options not available
Daniel Stenberg [Mon, 14 Feb 2022 07:38:37 +0000 (08:38 +0100)] 
scripts/ciconfig.pl: show used options not available

3 years agocircleci: add a job using libssh
Daniel Stenberg [Sat, 12 Feb 2022 21:57:23 +0000 (22:57 +0100)] 
circleci: add a job using libssh

Closes #8444

3 years agoruntests: set 'oldlibssh' for libssh versions before 0.9.6
Daniel Stenberg [Sun, 13 Feb 2022 10:12:56 +0000 (11:12 +0100)] 
runtests: set 'oldlibssh' for libssh versions before 0.9.6

... and make test 1459 check for the different return code then.

Closes #8444

3 years agoMakefile.am: Generate VS 2022 projects
Jay Satiro [Sun, 13 Feb 2022 21:26:41 +0000 (16:26 -0500)] 
Makefile.am: Generate VS 2022 projects

Follow-up to f13d4d0 which added VS 2022 project support.

Ref: https://github.com/curl/curl/pull/8438