aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-04-13appveyor: completely disable tests that fail to timeout earlyMarc Hoersken
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.
2020-04-13test1908: avoid using fixed port number in test dataDaniel Stenberg
Closes #5225
2020-04-12schannel: Fix blocking timeout logicAndrew Kurushin
- 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
2020-04-12socks: Fix blocking timeout logicJay Satiro
- 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
2020-04-12gopher: check remaining time left during write busy loopMarc Hoersken
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
2020-04-13gnutls: ensure TLS 1.3 when SRP isn't requestedDirkjan Bussink
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
2020-04-12tests/server: add hidden window to gracefully handle WM_CLOSEMarc Hoersken
Forward Window events as signals to existing signal event handler.
2020-04-12tests/server: add CTRL event handler for Win32 consolesMarc Hoersken
Forward CTRL events as signals to existing signal event handler.
2020-04-12tests/server: move all signal handling routines to util.[ch]Marc Hoersken
Avoid code duplication to prepare for portability enhancements.
2020-04-12compressed.d: stress that the headers are not modifiedDaniel Stenberg
Suggested-by: Michael Osipov Assisted-by: Jay Satiro Bug: https://github.com/curl/curl/issues/5182#issuecomment-611638008 Closes #5217
2020-04-11tests/server/util.c: use curl_off_t instead of long for pidMarc Hoersken
Avoid potential overflow of huge PIDs on Windows. Related to #5188 Assisted-by: Marcel Raad
2020-04-11tests: use Cygwin/msys PIDs for stunnel and sshd on WindowsMarc Hoersken
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
2020-04-11tests: add Windows compatible pidwait like pidkill and pidtermMarc Hoersken
Related to #5188
2020-04-11tests: fix conflict between Cygwin/msys and Windows PIDsMarc Hoersken
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
2020-04-11RELEASE-NOTES: syncedDaniel Stenberg
2020-04-11release-notes.pl: detect the start of the references in cleanup modeDaniel Stenberg
2020-04-11Revert "file: on Windows, refuse paths that start with \\"Daniel Stenberg
This reverts commit 1b71bc532bde8621fd3260843f8197182a467ff2. Reminded-by: Chris Roberts Bug: https://curl.haxx.se/mail/archive-2020-04/0013.html Closes #5215
2020-04-11lib: fix conversion warnings for SOCKET_WRITABLE/READABLEJay Satiro
- 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
2020-04-11test1148: tolerate progress updates better (again)Jay Satiro
- 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
2020-04-10sshserver.pl: use cached Win32 environment check variableMarc Hoersken
2020-04-10appveyor: partially revert 3413a110 to keep build without proxyMarc Hoersken
Ref: #5211 and #4526 Reported-by: Marcel Raad
2020-04-10appveyor: ignore failing 'connect to non-listening proxy' testsMarc Hoersken
Closes #5211
2020-04-10CI/macos: convert CRLF to LF and align indentationMarc Hoersken
2020-04-09url: allow non-HTTPS altsvc-matching for debug buildsDaniel Stenberg
This is already partly supported but this part was missing. Reported-by: James Fuller Closes #5205
2020-04-09server/resolve: remove AI_CANONNAME to make macos tell the truthDaniel Stenberg
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
2020-04-09runtests: fix warning about using an undefined variableDaniel Stenberg
Follow-up from 4d939ef6ceb2db1
2020-04-08release-notes: fix the initial reference list outputDaniel Stenberg
2020-04-08github actions: run when pushed to master or */ci + PRsDaniel Stenberg
Avoid double-builds when using "local" branches for PRs. For both macos and fuzz jobs. Closes #5201
2020-04-08runtests: provide nicer errormsg when protocol "dump" file is emptyDaniel Stenberg
2020-04-08schannel: support .P12 or .PFX client certificatesGilles Vollant
Used with curl command line option like this: --cert <filename>:<password> --cert-type p12 Closes #5193
2020-04-08tests: verify split initial HTTP requests with CURL_SMALLREQSENDDaniel Stenberg
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
2020-04-08http: don't consider upload done if the request isn't completely sent offDaniel Stenberg
Fixes #4919 Closes #5197
2020-04-08http: allow Curl_add_buffer_send() to do a short first send by forceDaniel Stenberg
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.
2020-04-08connect: store connection info for QUIC connectionsDaniel Stenberg
Restores the --head functionality to the curl utility which extracts 'protocol' that is stored that way. Reported-by: James Fuller Fixes #5196 Closes #5198
2020-04-07tests/README: update the port numbers listDaniel Stenberg
Since the pipelining server is long gone. Reported-by: James Fuller
2020-04-07select: remove typecast from SOCKET_WRITABLE/READABLE macrosDaniel Stenberg
So that they don't hide conversions-by-mistake Reviewed-by: Jay Satiro Closes #5190
2020-04-07CURLOPT_WRITEFUNCTION.3: add inline example and new see-alsoDaniel Stenberg
Closes #5192
2020-04-06release-notes: output trailing references sorted numericallyDaniel Stenberg
2020-04-06cleanup: correct copyright year range on a few filesDaniel Stenberg
2020-04-06configure: remove use of -vec-report0 from CFLAGS with iccDaniel Stenberg
... as it apparently isn't (always) supported. Reported-by: Alain Miniussi Fixes #5096 Closes #5191
2020-04-06warnless: remove code block for icc that didn't workDaniel Stenberg
Reported-by: Alain Miniussi Fixes #5096
2020-04-06dist: add missing setup-win32.hMarc Hoersken
Follow up to d820224b8b
2020-04-06RELEASE-NOTES: syncedDaniel Stenberg
2020-04-06scripts/release-notes.pl: add helper script for RELEASE-NOTES maintenanceDaniel Stenberg
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.
2020-04-06configure: don't check for Security.framework when cross-compilingDennis Felsing
Since it checks for the local file, not the cross-compiled one. Closes #5189
2020-04-06TODO: Option to make -Z merge lined based outputs on stdoutDaniel Stenberg
Closes #5175
2020-04-05lib: never define CURL_CA_BUNDLE with a getenvDaniel Stenberg
- 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
2020-04-05lib670: use the same Win32 API check as all other lib testsMarc Hoersken
2020-04-05appveyor: use random test server ports based upon APPVEYOR_API_URLMarc Hoersken
Avoid conflicts of test server ports with AppVeyor API on localhost. Closes #5034
2020-04-05appveyor: sort builds by type and add two new variantsMarc Hoersken
Related to #5034 and #5063