]> git.ipfire.org Git - thirdparty/curl.git/log
thirdparty/curl.git
5 years agotest1245: make it work with dynamic FTP server port 5247/head
Daniel Stenberg [Sat, 18 Apr 2020 21:48:43 +0000 (23:48 +0200)] 
test1245: make it work with dynamic FTP server port

5 years agotest1055: make it work with dynamic FTP port
Daniel Stenberg [Sat, 18 Apr 2020 21:47:49 +0000 (23:47 +0200)] 
test1055: make it work with dynamic FTP port

5 years agotest1028: make it run on dynamic FTP server port
Daniel Stenberg [Sat, 18 Apr 2020 21:46:29 +0000 (23:46 +0200)] 
test1028: make it run on dynamic FTP server port

5 years agotests: move pingpong server to dynamic listening port
Daniel Stenberg [Sat, 18 Apr 2020 21:41:07 +0000 (23:41 +0200)] 
tests: move pingpong server to dynamic listening port

FTP, IMAP, POP3, SMTP and their IPv6 versions are now all on dynamic
ports

Test 842-845 are unfortunately a bit hard to move over to this concept
right now and require "default port" still...

5 years agotest1056: work with dynamic HTTP ipv6 port
Daniel Stenberg [Fri, 17 Apr 2020 09:42:49 +0000 (11:42 +0200)] 
test1056: work with dynamic HTTP ipv6 port

5 years agotest1448: work with dynamic HTTP server port
Daniel Stenberg [Fri, 17 Apr 2020 09:28:38 +0000 (11:28 +0200)] 
test1448: work with dynamic HTTP server port

5 years agotests: introduce preprocessed test cases
Daniel Stenberg [Fri, 17 Apr 2020 07:58:42 +0000 (09:58 +0200)] 
tests: introduce preprocessed test cases

The runtests script now always performs variable replacement on the
entire test source file before the test gets executed, and saves the
updated version in a temporary file (log/test[num]) so that all test
case readers/servers can use that version (if present) and thus enjoy
the powers of test case variable substitution.

This is necessary to allow complete port number freedom.

Test 309 is updated to work with a non-fixed port number thanks to this.

5 years agotests: make 2006-2010 handle different port number lengths
Daniel Stenberg [Thu, 16 Apr 2020 22:00:45 +0000 (00:00 +0200)] 
tests: make 2006-2010 handle different port number lengths

5 years agotests: run the sws server on "any port"
Daniel Stenberg [Thu, 16 Apr 2020 15:52:24 +0000 (17:52 +0200)] 
tests: run the sws server on "any port"

Makes the test servers for HTTP and Gopher pop up on a currently unused
port and runtests adapts to that!

Closes #5247

5 years agosockfilt: tidy variable naming and data structure in select_ws
Marc Hoersken [Thu, 16 Apr 2020 20:28:44 +0000 (22:28 +0200)] 
sockfilt: tidy variable naming and data structure in select_ws

This commit does not introduce any logical changes to the code.

Reviewed-by: Jay Satiro and Marcel Raad
Closes #5238

5 years agolibssh: Use new ECDSA key types to check known hosts
Anderson Toshiyuki Sasaki [Thu, 16 Apr 2020 17:26:06 +0000 (19:26 +0200)] 
libssh: Use new ECDSA key types to check known hosts

From libssh 0.9.0, ssh_key_type() returns different key types for ECDSA
keys depending on the curve.

Signed-off-by: Anderson Toshiyuki Sasaki <ansasaki@redhat.com>
Fixes #5252
Closes #5253

5 years agoappveyor: add Unicode winbuild jobs
Marcel Raad [Fri, 3 Jan 2020 00:59:58 +0000 (01:59 +0100)] 
appveyor: add Unicode winbuild jobs

These are cheap as they don't build tests.

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

5 years agomqttd: s/errno/SOCKERRNO
Daniel Stenberg [Wed, 15 Apr 2020 13:48:38 +0000 (15:48 +0200)] 
mqttd: s/errno/SOCKERRNO

To behave proper on Windows
Reported-by: Gisle Vanem
Bug: https://github.com/curl/curl/commit/5e855bbd18f84a02c951be7cac6188276818cdac#r38507132
Closes #5241

5 years agobuildconf: use find -execdir instead, remove -print and the ares files
Daniel Stenberg [Wed, 15 Apr 2020 12:53:53 +0000 (14:53 +0200)] 
buildconf: use find -execdir instead, remove -print and the ares files

Follow-up to 1e41bec96a6e

Suggested-by: Marc Hörsken
5 years agobuildconf: avoid using tempfile when removing files
Alexander V. Tikhonov [Fri, 8 Nov 2019 12:08:04 +0000 (15:08 +0300)] 
buildconf: avoid using tempfile when removing files

Closes #5213

5 years agocopyright: bump the copyright year range
Daniel Stenberg [Wed, 15 Apr 2020 07:24:49 +0000 (09:24 +0200)] 
copyright: bump the copyright year range

5 years agoscripts/release-notes.pl: accept colon after the Fixes/Closes keywords
Daniel Stenberg [Tue, 14 Apr 2020 21:36:37 +0000 (23:36 +0200)] 
scripts/release-notes.pl: accept colon after the Fixes/Closes keywords

5 years agodocs/MQTT: replace confusing 80 by 75
JP Mens [Tue, 14 Apr 2020 17:07:08 +0000 (19:07 +0200)] 
docs/MQTT: replace confusing 80 by 75

I was a bit surprised by the `80`: first thought: what's HTTP doing
here? ;)

Closes #5236

5 years agocmake: Avoid MSVC C4273 warnings in send/recv checks
Brad King [Mon, 13 Apr 2020 13:20:36 +0000 (09:20 -0400)] 
cmake: Avoid MSVC C4273 warnings in send/recv checks

We use `check_c_source_compiles` to check possible send/recv signatures
by reproducing the forward declarations from system headers.  On Windows
the `winsock2.h` header adds dll linkage settings to its forward
declaration.  If ours does not match the compiler warns:

    warning C4273: 'recv': inconsistent dll linkage

Add `WINSOCK_API_LINKAGE` to our test signatures when it is defined so
that our linkage is consistent with that from `winsock2.h`.

Fixes #4764
Closes #5232

5 years agoKNOWN_BUGS: Add entry 'Blocking socket operations'
Jay Satiro [Sat, 11 Apr 2020 20:05:18 +0000 (16:05 -0400)] 
KNOWN_BUGS: Add entry 'Blocking socket operations'

- Add threaded resolver cleanup and GSSAPI for FTP to the TODO list of
  known blocking operations.

- New known bugs entry 'Blocking socket operations in non-blocking API'
  that directs to the TODO's list of known blocking operations.

Ref: https://github.com/curl/curl/pull/5214#issuecomment-612488021

Reported-by: Marc Hoersken
Closes https://github.com/curl/curl/pull/5216

5 years agotest2043: use revoked.badssl.com instead of revoked.grc.com
Marc Hoersken [Mon, 13 Apr 2020 18:38:14 +0000 (20:38 +0200)] 
test2043: use revoked.badssl.com instead of revoked.grc.com

The certificate of revoked.grc.com has expired on 2020-04-13.

Reviewed-by: Jay Satiro
Closes #5233

5 years agosockfilt: fix broken pipe on Windows to be ready in select_ws
Marc Hoersken [Mon, 13 Apr 2020 17:18:15 +0000 (19:18 +0200)] 
sockfilt: fix broken pipe on Windows to be ready in select_ws

Closes #5228

5 years agoRELEASE-NOTES: synced
Daniel Stenberg [Tue, 14 Apr 2020 13:02:01 +0000 (15:02 +0200)] 
RELEASE-NOTES: synced

5 years agoscripts/release-notes: fix duplicate output header
Daniel Stenberg [Tue, 14 Apr 2020 12:57:46 +0000 (14:57 +0200)] 
scripts/release-notes: fix duplicate output header

5 years agogithub/workflow: enable MQTT in the macOS debug build
Daniel Stenberg [Tue, 14 Apr 2020 09:19:13 +0000 (11:19 +0200)] 
github/workflow: enable MQTT in the macOS debug build

5 years agoazure: add mqtt support to one of the Windows builds
Daniel Stenberg [Tue, 14 Apr 2020 09:19:13 +0000 (11:19 +0200)] 
azure: add mqtt support to one of the Windows builds

5 years agotravis: add mqtt job on Linux
Daniel Stenberg [Tue, 14 Apr 2020 09:19:12 +0000 (11:19 +0200)] 
travis: add mqtt job on Linux

5 years agotests: add four MQTT tests 1190 - 1193
Daniel Stenberg [Tue, 14 Apr 2020 09:19:12 +0000 (11:19 +0200)] 
tests: add four MQTT tests 1190 - 1193

5 years agotests: add the mqtt test server mqttd
Daniel Stenberg [Tue, 14 Apr 2020 09:19:12 +0000 (11:19 +0200)] 
tests: add the mqtt test server mqttd

5 years agotests: support hex encoded data and mqtt server
Daniel Stenberg [Tue, 14 Apr 2020 09:19:12 +0000 (11:19 +0200)] 
tests: support hex encoded data and mqtt server

The mqtt server is started using a "random" port.

5 years agomqtt: add new experimental protocol
Bjorn Stenberg [Tue, 14 Apr 2020 09:19:12 +0000 (11:19 +0200)] 
mqtt: add new experimental protocol

Closes #5173

5 years agoTODO: Consider convenience options for JSON and XML?
Daniel Stenberg [Tue, 14 Apr 2020 06:58:38 +0000 (08:58 +0200)] 
TODO: Consider convenience options for JSON and XML?

Closes #5203

5 years agotool: do not declare functions with Curl_ prefix
Daniel Stenberg [Mon, 13 Apr 2020 21:46:18 +0000 (23:46 +0200)] 
tool: do not declare functions with Curl_ prefix

To avoid collision risks with private libcurl symbols when linked with
static versions (or just versions not hiding internal symbols).

Reported-by: hydra3333 on github
Fixes #5219
Closes #5234

5 years agocmake: add aliases so exported target names are available in tree
Nathaniel R. Lewis [Thu, 9 Apr 2020 20:42:22 +0000 (13:42 -0700)] 
cmake: add aliases so exported target names are available in tree

Reviewed-by: Brad King
Closes #5206

5 years agoversion: increase buffer space for ssl version output
Daniel Stenberg [Sun, 12 Apr 2020 21:56:33 +0000 (23:56 +0200)] 
version: increase buffer space for ssl version output

To avoid it getting truncated, especially when several SSL backends are
built-in.

Reported-by: Gisle Vanem
Fixes #5222
Closes #5226

5 years agocirrus: no longer ignore test 504 which is working again
Marc Hoersken [Mon, 13 Apr 2020 18:27:00 +0000 (20:27 +0200)] 
cirrus: no longer ignore test 504 which is working again

The test is working again, because TCP blackholing is disabled.

5 years agoappveyor: completely disable tests that fail to timeout early
Marc Hoersken [Mon, 13 Apr 2020 17:35:30 +0000 (19:35 +0200)] 
appveyor: completely disable tests that fail to timeout early

The tests changed from ignored to disabled are tests that are
about connecting to non-listening socket. On AppVeyor these
tests are not reliable, because for some unknown reason the
connect is not timing out before the test time limit is reached.

5 years agotest1908: avoid using fixed port number in test data
Daniel Stenberg [Sun, 12 Apr 2020 21:51:55 +0000 (23:51 +0200)] 
test1908: avoid using fixed port number in test data

Closes #5225

5 years agoschannel: Fix blocking timeout logic
Andrew Kurushin [Sun, 12 Apr 2020 10:07:51 +0000 (13:07 +0300)] 
schannel: Fix blocking timeout logic

- Fix schannel_send for the case when no timeout was set.

Prior to this change schannel would error if the socket was not ready
to send data and no timeout was set.

This commit is similar to parent commit 89dc6e0 which recently made the
same change for SOCKS, for the same reason. Basically it was not well
understood that when Curl_timeleft returns 0 it is not a timeout of 0 ms
but actually means no timeout.

Fixes https://github.com/curl/curl/issues/5177
Closes https://github.com/curl/curl/pull/5221

5 years agosocks: Fix blocking timeout logic
Jay Satiro [Sun, 12 Apr 2020 03:19:55 +0000 (23:19 -0400)] 
socks: Fix blocking timeout logic

- Document in Curl_timeleft's comment block that returning 0 signals no
  timeout (ie there's infinite time left).

- Fix SOCKS' Curl_blockread_all for the case when no timeout was set.

Prior to this change if the timeout had a value of 0 and that was passed
to SOCKET_READABLE it would return right away instead of blocking. That
was likely because it was not well understood that when Curl_timeleft
returns 0 it is not a timeout of 0 ms but actually means no timeout.

Ref: https://github.com/curl/curl/pull/5214#issuecomment-612512360

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

5 years agogopher: check remaining time left during write busy loop
Marc Hoersken [Sun, 12 Apr 2020 12:03:38 +0000 (14:03 +0200)] 
gopher: check remaining time left during write busy loop

Prior to this change gopher's blocking code would block forever,
ignoring any set timeout value.

Assisted-by: Jay Satiro
Reviewed-by: Daniel Stenberg
Similar to #5220 and #5221
Closes #5214

5 years agognutls: ensure TLS 1.3 when SRP isn't requested
Dirkjan Bussink [Sun, 12 Apr 2020 11:29:09 +0000 (11:29 +0000)] 
gnutls: ensure TLS 1.3 when SRP isn't requested

When SRP is requested in the priority string, GnuTLS will disable
support for TLS 1.3. Before this change, curl would always add +SRP to
the priority list, effectively always disabling TLS 1.3 support.

With this change, +SRP is only added to the priority list when SRP
authentication is also requested. This also allows updating the error
handling here to not have to retry without SRP. This is because SRP is
only added when requested and in that case a retry is not needed.

Closes #5223

5 years agotests/server: add hidden window to gracefully handle WM_CLOSE 5218/head
Marc Hoersken [Sun, 12 Apr 2020 16:38:12 +0000 (18:38 +0200)] 
tests/server: add hidden window to gracefully handle WM_CLOSE

Forward Window events as signals to existing signal event handler.

5 years agotests/server: add CTRL event handler for Win32 consoles
Marc Hoersken [Sat, 11 Apr 2020 21:31:55 +0000 (23:31 +0200)] 
tests/server: add CTRL event handler for Win32 consoles

Forward CTRL events as signals to existing signal event handler.

5 years agotests/server: move all signal handling routines to util.[ch]
Marc Hoersken [Sat, 11 Apr 2020 06:35:05 +0000 (08:35 +0200)] 
tests/server: move all signal handling routines to util.[ch]

Avoid code duplication to prepare for portability enhancements.

5 years agocompressed.d: stress that the headers are not modified
Daniel Stenberg [Sat, 11 Apr 2020 21:49:27 +0000 (23:49 +0200)] 
compressed.d: stress that the headers are not modified

Suggested-by: Michael Osipov
Assisted-by: Jay Satiro
Bug: https://github.com/curl/curl/issues/5182#issuecomment-611638008
Closes #5217

5 years agotests/server/util.c: use curl_off_t instead of long for pid
Marc Hoersken [Sat, 11 Apr 2020 21:40:45 +0000 (23:40 +0200)] 
tests/server/util.c: use curl_off_t instead of long for pid

Avoid potential overflow of huge PIDs on Windows.

Related to #5188
Assisted-by: Marcel Raad
5 years agotests: use Cygwin/msys PIDs for stunnel and sshd on Windows
Marc Hoersken [Fri, 10 Apr 2020 20:54:24 +0000 (22:54 +0200)] 
tests: use Cygwin/msys PIDs for stunnel and sshd on Windows

Since the Windows versions of both programs would write Windows
PIDs to their pidfiles which we cannot handle, we need to use
our known perl.exe Cygwin/msys PID together with exec() in order
to tie the spawned processes to the existance of our perl.exe

The perl.exe that is executing secureserver.pl and sshserver.pl
has a Cygwin/msys PID, because it is started inside Cygwin/msys.

Related to #5188

5 years agotests: add Windows compatible pidwait like pidkill and pidterm
Marc Hoersken [Fri, 10 Apr 2020 19:25:55 +0000 (21:25 +0200)] 
tests: add Windows compatible pidwait like pidkill and pidterm

Related to #5188

5 years agotests: fix conflict between Cygwin/msys and Windows PIDs
Marc Hoersken [Sun, 5 Apr 2020 17:18:09 +0000 (19:18 +0200)] 
tests: fix conflict between Cygwin/msys and Windows PIDs

Add 65536 to Windows PIDs to allow Windows specific treatment
by having disjunct ranges for Cygwin/msys and Windows PIDs.

See also:
- https://cygwin.com/git/?p=newlib-cygwin.git;a=commit; â†µ
  h=b5e1003722cb14235c4f166be72c09acdffc62ea
- https://cygwin.com/git/?p=newlib-cygwin.git;a=commit; â†µ
  h=448cf5aa4b429d5a9cebf92a0da4ab4b5b6d23fe

Replaces #5178
Closes #5188

5 years agoRELEASE-NOTES: synced
Daniel Stenberg [Sat, 11 Apr 2020 16:48:31 +0000 (18:48 +0200)] 
RELEASE-NOTES: synced

5 years agorelease-notes.pl: detect the start of the references in cleanup mode
Daniel Stenberg [Sat, 11 Apr 2020 16:47:23 +0000 (18:47 +0200)] 
release-notes.pl: detect the start of the references in cleanup mode

5 years agoRevert "file: on Windows, refuse paths that start with \\"
Daniel Stenberg [Fri, 10 Apr 2020 21:52:06 +0000 (23:52 +0200)] 
Revert "file: on Windows, refuse paths that start with \\"

This reverts commit 1b71bc532bde8621fd3260843f8197182a467ff2.

Reminded-by: Chris Roberts
Bug: https://curl.haxx.se/mail/archive-2020-04/0013.html

Closes #5215

5 years agolib: fix conversion warnings for SOCKET_WRITABLE/READABLE
Jay Satiro [Tue, 7 Apr 2020 21:18:05 +0000 (17:18 -0400)] 
lib: fix conversion warnings for SOCKET_WRITABLE/READABLE

- If loss of data may occur converting a timediff_t to time_t and
  the time value is > TIME_T_MAX then treat it as TIME_T_MAX.

This is a follow-up to 8843678 which removed the (time_t) typecast
from the macros so that conversion warnings could be identified.

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

5 years agotest1148: tolerate progress updates better (again)
Jay Satiro [Tue, 7 Apr 2020 04:50:11 +0000 (00:50 -0400)] 
test1148: tolerate progress updates better (again)

- Ignore intermediate progress updates.

- Support locales that use a character other than period as decimal
  separator (eg 100,0%).

test1148 checks that the progress finishes at 100% and has the right
bar width. Prior to this change the test assumed that the only progress
reported for such a quick transfer was 100%, however in rare instances
(like in the CI where transfer time can slow considerably) there may be
intermediate updates. For example, below is stderrlog1148 from a failed
CI run with explicit \r and \n added (it is one line; broken up so that
it's easier to understand).

\r
\r##################################                                        48.3%
\r######################################################################## 100.0%
\n

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

5 years agosshserver.pl: use cached Win32 environment check variable
Marc Hoersken [Sun, 5 Apr 2020 16:46:42 +0000 (18:46 +0200)] 
sshserver.pl: use cached Win32 environment check variable

5 years agoappveyor: partially revert 3413a110 to keep build without proxy
Marc Hoersken [Fri, 10 Apr 2020 19:01:19 +0000 (21:01 +0200)] 
appveyor: partially revert 3413a110 to keep build without proxy

Ref: #5211 and #4526
Reported-by: Marcel Raad
5 years agoappveyor: ignore failing 'connect to non-listening proxy' tests
Marc Hoersken [Thu, 9 Apr 2020 23:02:30 +0000 (01:02 +0200)] 
appveyor: ignore failing 'connect to non-listening proxy' tests

Closes #5211

5 years agoCI/macos: convert CRLF to LF and align indentation
Marc Hoersken [Thu, 9 Apr 2020 22:59:35 +0000 (00:59 +0200)] 
CI/macos: convert CRLF to LF and align indentation

5 years agourl: allow non-HTTPS altsvc-matching for debug builds
Daniel Stenberg [Thu, 9 Apr 2020 13:08:46 +0000 (15:08 +0200)] 
url: allow non-HTTPS altsvc-matching for debug builds

This is already partly supported but this part was missing.
Reported-by: James Fuller
Closes #5205

5 years agoserver/resolve: remove AI_CANONNAME to make macos tell the truth
Daniel Stenberg [Wed, 8 Apr 2020 14:40:51 +0000 (16:40 +0200)] 
server/resolve: remove AI_CANONNAME to make macos tell the truth

With this bit set, my mac successfully resolves "ip6-localhost" when in
fact there is no such host known to my machine! That in turn made test
241 wrongly execute and fail.

Closes #5202

5 years agoruntests: fix warning about using an undefined variable
Daniel Stenberg [Wed, 8 Apr 2020 14:40:25 +0000 (16:40 +0200)] 
runtests: fix warning about using an undefined variable

Follow-up from 4d939ef6ceb2db1

5 years agorelease-notes: fix the initial reference list output
Daniel Stenberg [Wed, 8 Apr 2020 12:51:53 +0000 (14:51 +0200)] 
release-notes: fix the initial reference list output

5 years agogithub actions: run when pushed to master or */ci + PRs
Daniel Stenberg [Wed, 8 Apr 2020 09:54:31 +0000 (11:54 +0200)] 
github actions: run when pushed to master or */ci + PRs

Avoid double-builds when using "local" branches for PRs. For both macos
and fuzz jobs.

Closes #5201

5 years agoruntests: provide nicer errormsg when protocol "dump" file is empty
Daniel Stenberg [Wed, 8 Apr 2020 07:44:33 +0000 (09:44 +0200)] 
runtests: provide nicer errormsg when protocol "dump" file is empty

5 years agoschannel: support .P12 or .PFX client certificates
Gilles Vollant [Sun, 15 Sep 2019 12:37:36 +0000 (14:37 +0200)] 
schannel: support .P12 or .PFX client certificates

Used with curl command line option like this: --cert
<filename>:<password> --cert-type p12

Closes #5193

5 years agotests: verify split initial HTTP requests with CURL_SMALLREQSEND
Daniel Stenberg [Tue, 7 Apr 2020 13:10:37 +0000 (15:10 +0200)] 
tests: verify split initial HTTP requests with CURL_SMALLREQSEND

test1294: "split request" being when the entire request isn't sent in
the first go, and the remainder is sent in the PERFORM state. A GET
request is otherwise not sending anything during PERFORM.

test1295: same kind of split but with POST

Closes #5197

5 years agohttp: don't consider upload done if the request isn't completely sent off
Daniel Stenberg [Tue, 7 Apr 2020 16:16:01 +0000 (18:16 +0200)] 
http: don't consider upload done if the request isn't completely sent off

Fixes #4919
Closes #5197

5 years agohttp: allow Curl_add_buffer_send() to do a short first send by force
Daniel Stenberg [Tue, 7 Apr 2020 13:09:04 +0000 (15:09 +0200)] 
http: allow Curl_add_buffer_send() to do a short first send by force

In a debug build, settting the environment variable "CURL_SMALLREQSEND"
will make the first HTTP request send not send more bytes than the set
amount, thus ending up verifying that the logic for handling a split
HTTP request send works correctly.

5 years agoconnect: store connection info for QUIC connections
Daniel Stenberg [Tue, 7 Apr 2020 21:15:30 +0000 (23:15 +0200)] 
connect: store connection info for QUIC connections

Restores the --head functionality to the curl utility which extracts
'protocol' that is stored that way.

Reported-by: James Fuller
Fixes #5196
Closes #5198

5 years agotests/README: update the port numbers list
Daniel Stenberg [Tue, 7 Apr 2020 11:15:14 +0000 (13:15 +0200)] 
tests/README: update the port numbers list

Since the pipelining server is long gone.
Reported-by: James Fuller
5 years agoselect: remove typecast from SOCKET_WRITABLE/READABLE macros
Daniel Stenberg [Mon, 6 Apr 2020 15:00:39 +0000 (17:00 +0200)] 
select: remove typecast from SOCKET_WRITABLE/READABLE macros

So that they don't hide conversions-by-mistake

Reviewed-by: Jay Satiro
Closes #5190

5 years agoCURLOPT_WRITEFUNCTION.3: add inline example and new see-also
Daniel Stenberg [Mon, 6 Apr 2020 16:14:10 +0000 (18:14 +0200)] 
CURLOPT_WRITEFUNCTION.3: add inline example and new see-also

Closes #5192

5 years agorelease-notes: output trailing references sorted numerically
Daniel Stenberg [Mon, 6 Apr 2020 21:45:31 +0000 (23:45 +0200)] 
release-notes: output trailing references sorted numerically

5 years agocleanup: correct copyright year range on a few files
Daniel Stenberg [Mon, 6 Apr 2020 21:21:52 +0000 (23:21 +0200)] 
cleanup: correct copyright year range on a few files

5 years agoconfigure: remove use of -vec-report0 from CFLAGS with icc
Daniel Stenberg [Mon, 6 Apr 2020 15:07:38 +0000 (17:07 +0200)] 
configure: remove use of -vec-report0 from CFLAGS with icc

... as it apparently isn't (always) supported.
Reported-by: Alain Miniussi
Fixes #5096
Closes #5191

5 years agowarnless: remove code block for icc that didn't work
Daniel Stenberg [Mon, 6 Apr 2020 15:06:45 +0000 (17:06 +0200)] 
warnless: remove code block for icc that didn't work

Reported-by: Alain Miniussi
Fixes #5096

5 years agodist: add missing setup-win32.h
Marc Hoersken [Mon, 6 Apr 2020 16:05:13 +0000 (18:05 +0200)] 
dist: add missing setup-win32.h

Follow up to d820224b8b

5 years agoRELEASE-NOTES: synced
Daniel Stenberg [Mon, 6 Apr 2020 14:43:32 +0000 (16:43 +0200)] 
RELEASE-NOTES: synced

5 years agoscripts/release-notes.pl: add helper script for RELEASE-NOTES maintenance
Daniel Stenberg [Mon, 6 Apr 2020 14:20:27 +0000 (16:20 +0200)] 
scripts/release-notes.pl: add helper script for RELEASE-NOTES maintenance

This script helps putting entries in the RELEASE-NOTES using a coherent
style and sorting with a minimal human editing effort - as long as the
first line in the commit message is good enough! There's a short howto
at the top of the file.

5 years agoconfigure: don't check for Security.framework when cross-compiling
Dennis Felsing [Mon, 6 Apr 2020 11:56:07 +0000 (13:56 +0200)] 
configure: don't check for Security.framework when cross-compiling

Since it checks for the local file, not the cross-compiled one.

Closes #5189

5 years agoTODO: Option to make -Z merge lined based outputs on stdout
Daniel Stenberg [Sun, 5 Apr 2020 22:05:42 +0000 (00:05 +0200)] 
TODO: Option to make -Z merge lined based outputs on stdout

Closes #5175

5 years agolib: never define CURL_CA_BUNDLE with a getenv
Daniel Stenberg [Sun, 5 Apr 2020 09:19:39 +0000 (11:19 +0200)] 
lib: never define CURL_CA_BUNDLE with a getenv

- it breaks the build (since 6de756c9b1de34b7a1)
- it's not documented and not consistent across platforms
- the curl tool does that getenv magic

Bug: https://github.com/curl/curl/commit/6de756c#r38127030
Reported-by: Gisle Vanem
Closes #5187

5 years agolib670: use the same Win32 API check as all other lib tests
Marc Hoersken [Sun, 5 Apr 2020 16:25:03 +0000 (18:25 +0200)] 
lib670: use the same Win32 API check as all other lib tests

5 years agoappveyor: use random test server ports based upon APPVEYOR_API_URL
Marc Hoersken [Mon, 9 Mar 2020 12:51:35 +0000 (13:51 +0100)] 
appveyor: use random test server ports based upon APPVEYOR_API_URL

Avoid conflicts of test server ports with AppVeyor API on localhost.

Closes #5034

5 years agoappveyor: sort builds by type and add two new variants
Marc Hoersken [Fri, 6 Mar 2020 20:02:18 +0000 (21:02 +0100)] 
appveyor: sort builds by type and add two new variants

Related to #5034 and #5063

5 years agoappveyor: show failed tests in log even if test is ignored
Marc Hoersken [Fri, 6 Mar 2020 20:41:06 +0000 (21:41 +0100)] 
appveyor: show failed tests in log even if test is ignored

And print API response with newline only if there is one

5 years agoappveyor: turn disabled tests into ignored result tests
Marc Hoersken [Thu, 5 Mar 2020 17:56:57 +0000 (18:56 +0100)] 
appveyor: turn disabled tests into ignored result tests

5 years agoKNOWN_BUGS: fixed "USE_UNIX_SOCKETS on Windows"
Daniel Stenberg [Sun, 5 Apr 2020 09:23:25 +0000 (11:23 +0200)] 
KNOWN_BUGS: fixed "USE_UNIX_SOCKETS on Windows"

Fixed with #5170 (commit 23a870f2fd041278)

5 years agotest1566: verify --etag-compare that gets a 304 back
Daniel Stenberg [Sat, 4 Apr 2020 22:05:47 +0000 (00:05 +0200)] 
test1566: verify --etag-compare that gets a 304 back

Verifies the fix in #5183

Closes #5186

5 years agoCURLINFO_CONDITION_UNMET: return true for 304 http status code
Kwon-Young Choi [Sat, 4 Apr 2020 15:27:18 +0000 (17:27 +0200)] 
CURLINFO_CONDITION_UNMET: return true for 304 http status code

In libcurl, CURLINFO_CONDITION_UNMET is used to avoid writing to the
output file if the server did not transfered a file based on time
condition. In the same manner, getting a 304 HTTP response back from the
server, for example after passing a custom If-Match-* header, also
fulfill this condition.

Fixes #5181
Closes #5183

5 years agocurl: allow both --etag-compare and --etag-save with same file name
Kwon-Young Choi [Fri, 3 Apr 2020 18:51:14 +0000 (20:51 +0200)] 
curl: allow both --etag-compare and --etag-save with same file name

This change inverse the order of processing for the --etag-compare and
--etag-save option to process first --etag-compare. This in turn allows
to use the same file name to compare and save an etag.

The original behavior of not failing if the etag file does not exists is
conserved.

Fixes #5179
Closes #5180

5 years agowindows: enable UnixSockets with all build toolchains
Viktor Szakats [Sat, 4 Apr 2020 17:49:20 +0000 (17:49 +0000)] 
windows: enable UnixSockets with all build toolchains

Extend existing unix socket support in Windows builds to be
enabled for all toolchain vendors or versions. (Previously
it was only supported with certain MSVC versions + more recent
Windows 10 SDKs)

Ref: https://devblogs.microsoft.com/commandline/af_unix-comes-to-windows/
Ref: https://github.com/curl/curl/issues/5162
Closes: https://github.com/curl/curl/pull/5170
5 years agoKNOWN_BUGS: Store TLS context per transfer instead of per connection
Daniel Stenberg [Fri, 3 Apr 2020 22:01:35 +0000 (00:01 +0200)] 
KNOWN_BUGS: Store TLS context per transfer instead of per connection

Closes #5102

5 years agosockfilt: remove redundancy in timeout handling
Marc Hoersken [Sun, 29 Mar 2020 15:18:34 +0000 (17:18 +0200)] 
sockfilt: remove redundancy in timeout handling

And update other logmsg output in select_ws on Windows.

5 years agosockfilt: fix handling of ready closed sockets on Windows
Marc Hoersken [Sun, 29 Mar 2020 16:25:31 +0000 (18:25 +0200)] 
sockfilt: fix handling of ready closed sockets on Windows

Replace the incomplete workaround regarding FD_CLOSE
only signalling once by instead doing a pre-check with
standard select and storing the result for later use.

select keeps triggering on closed sockets on Windows while
WSAEventSelect fires only once with data still available.
By doing the pre-check we do not run in a deadlock
due to waiting forever for another FD_CLOSE event.

5 years agosockfilt: fix race-condition of waiting threads and event handling
Marc Hoersken [Thu, 2 Apr 2020 16:41:11 +0000 (18:41 +0200)] 
sockfilt: fix race-condition of waiting threads and event handling

Fix race-condition of waiting threads finishing while events are
already being processed which lead to invalid or skipped events.

Use mutex to check for one event at a time or do post-processing.
In addition to mutex-based locking use specific event as signal.

Closes #5156

5 years agoCI-fuzz: increase fuzz time to 40 minutes
Leo Neat [Thu, 2 Apr 2020 17:12:24 +0000 (10:12 -0700)] 
CI-fuzz: increase fuzz time to 40 minutes

Closes #5174

5 years agoCI: increase Azure Pipelines timeouts due to performance issues
Marc Hoersken [Thu, 2 Apr 2020 17:27:30 +0000 (19:27 +0200)] 
CI: increase Azure Pipelines timeouts due to performance issues

The current demand on Azure negatively impacts the CI performance.

5 years agoruntests.pl: log host OS as detected by Perl environment
Marc Hoersken [Thu, 2 Apr 2020 16:33:22 +0000 (18:33 +0200)] 
runtests.pl: log host OS as detected by Perl environment