summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* http2: simplify and clean up trailer handlingbagder/http2-trailers-simplifiedDaniel Stenberg2020-05-063-44/+12
| | | | | | | | | | | Triggered by a crash detected by OSS-Fuzz after the dynbuf introduction in ed35d6590e72. This should make the trailer handling more straight forward and hopefully less error-prone. Deliver the trailer header to the callback already at receive-time. No longer caches the trailers to get delivered at end of stream. Bug: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=22030
* runtests: set +x mode againDaniel Stenberg2020-05-061-0/+0
|
* libssh2: convert over to use dynbufDaniel Stenberg2020-05-052-78/+56
| | | | | | | | In my very basic test that lists sftp://127.0.0.1/tmp/, this patched code makes 161 allocations compared to 194 in git master. A 17% reduction. Closes #5336
* travis: add "qlog" as feature in the quiche buildDaniel Stenberg2020-05-051-1/+1
|
* quiche: enable qlog outputDaniel Stenberg2020-05-053-2/+44
| | | | | | | | | | | | | | | quiche has the potential to log qlog files. To enable this, you must build quiche with the qlog feature enabled `cargo build --features qlog`. curl then passes a file descriptor to quiche, which takes ownership of the file. The FD transfer only works on UNIX. The convention is to enable logging when the QLOGDIR environment is set. This should be a path to a folder where files are written with the naming template <SCID>.qlog. Co-authored-by: Lucas Pardue Replaces #5337 Closes #5341
* urldata.h: remove #define HEADERSIZE, not used anymoreDaniel Stenberg2020-05-041-4/+0
| | | | Follow-up to ed35d6590e72c
* ngtcp2: convert to dynbufDaniel Stenberg2020-05-044-90/+23
| | | | Closes #5335
* connect: make happy eyeballs work for QUIC (again)Daniel Stenberg2020-05-041-1/+9
| | | | | | Follow-up from dbd16c3e256c6c (regression in 7.70.0) Closes #5334
* connect: add two asserts to clue code analyzers in a littleDaniel Stenberg2020-05-041-0/+2
|
* http_proxy: ported to use dynbuf instead of a static size bufferDaniel Stenberg2020-05-044-73/+60
| | | | Removes a 16K static buffer from the easy handle. Simplifies the code.
* dynbuf: introduce internal generic dynamic buffer functionsDaniel Stenberg2020-05-0427-862/+881
| | | | | | | | | | | | | A common set of functions instead of many separate implementations for creating buffers that can grow when appending data to them. Existing functionality has been ported over. In my early basic testing, the total number of allocations seem at roughly the same amount as before, possibly a few less. See docs/DYNBUF.md for a description of the API. Closes #5300
* runtests: remove sleep callsDaniel Stenberg2020-05-031-19/+0
| | | | | | | | Remove many one second sleeps that were done *after* each newly started test server already has been verified. They should not have any purpose there. Closes #5323
* asyn-*: remove support for never-used NULL entry pointersDaniel Stenberg2020-05-032-18/+18
| | | | | | | ... and instead convert those to asserts to make sure they are truly never NULL. Closes #5324
* doc: Rename VERSIONS to VERSIONS.md as it already has Markdown syntaxEmil Engler2020-05-023-2/+2
| | | | Closes #5325
* asyn-thread: fix cppcheck warningJay Satiro2020-05-021-2/+4
| | | | | | | | | | | | | | | - Check for NULL entry parameter before attempting to deref entry in Curl_resolver_is_resolved, like is already done in asyn-ares. This is to silence cppcheck which does not seem to understand that asyn-ares and asyn-thread have separate Curl_resolver_is_resolved and those units are mutually exclusive. Prior to this change it warned of a scenario where asyn-thread's Curl_resolver_is_resolved is called with a NULL entry from asyn-ares, but that couldn't happen. Reported-by: rl1987@users.noreply.github.com Fixes https://github.com/curl/curl/issues/5326
* select: fix overflow protection in Curl_socket_checkJay Satiro2020-05-021-3/+10
| | | | | | | | | Follow-up to a96c752 which changed the timeout_ms type from time_t to timediff_t. Ref: https://github.com/curl/curl/pull/5240 Closes https://github.com/curl/curl/pull/5286
* sockfilt: make select_ws stop waiting on exit signal eventMarc Hoersken2020-05-021-2/+12
| | | | | | | | | | | This makes sure that select_ws behaves similar to real select which stops waiting on a signal handler being triggered. This makes it possible to gracefully stop sockfilt.exe on Windows with taskkill /IM sockfilt.exe (without /F force flag). Reviewed-by: Jay Satiro Part of #5260
* tests/server/util.[ch]: add exit event to stop waiting on WindowsMarc Hoersken2020-05-022-0/+24
| | | | | | | | | | | | This commit adds a global exit event to the test servers that Windows-specific wait routines can use to get triggered if the program was signaled to be terminated, eg. select_ws in sockfilt.c The exit event will be managed by the signal handling code and is set to not reset automatically to support multiple wait routines. Reviewed-by: Jay Satiro Closes #5260
* tests/server/util.c: fix thread handle not being closedMarc Hoersken2020-05-021-2/+9
| | | | | Reviewed-by: Jay Satiro Part of #5260
* tests/server/util.c: use raise instead of calling signal handlerMarc Hoersken2020-05-021-2/+2
| | | | | | | | Use raise to trigger signal handler instead of calling it directly and causing potential unexpected control flow. Reviewed-by: Jay Satiro Part of #5260
* tests: add support for SSH server variant specific transfer pathsMarc Hoersken2020-05-0251-49/+61
| | | | | | | | OpenSSH for Windows requires paths in the format of /C:/ instead of the pseudo-POSIX paths /cygdrive/c/ or just /c/ Reviewed-by: Daniel Stenberg Closes #5298
* RELEASE-NOTES: syncedDaniel Stenberg2020-05-021-4/+25
|
* libssh2: set the expected total size in SCP upload initDaniel Stenberg2020-05-021-1/+3
| | | | | | | | | ... as otherwise the progress callback gets called without that information, making the progress meter have less info. Reported-by: Murugan Balraj Bug: https://curl.haxx.se/mail/archive-2020-05/0000.html Closes #5317
* runtests: make the logmsg from the ssh server only show in verboseDaniel Stenberg2020-05-021-1/+1
|
* tests: make test 1248 + 1249 use %NOLISTENPORTDaniel Stenberg2020-05-022-2/+2
| | | | | | | ... instead of a port of a non-running server so that it works stand-alone. Closes #5318
* examples: remove asiohiper.cppDaniel Stenberg2020-05-022-498/+2
| | | | | | | | | This example has repeatedly been reported to contain bugs, and as users copy and paste code from this into production, I now deem it better to not provide the example at all. Closes #5090 Closes #5322
* doc: add missing closing parenthesis in CURLINFO_SSL_VERIFYRESULT.3Emil Engler2020-05-021-1/+1
| | | | Closes #5320
* KNOWN_BUGS: Remove "curl --upload-file . hang if delay in STDIN"Emil Engler2020-05-021-11/+2
| | | | | | It was fixed in 9a2cbf3 Closes #5319
* cirrus: disable SFTP and SCP testsDaniel Stenberg2020-04-301-3/+3
| | | | | | | | | ... as we can't seem to start the sshd server on it. Those problems existed before d1239b50bececd (running the SSH server on a random port), but they're more noticable now since there are more failed attempts in the logs. Closes #5315
* runtests: fix typo in the existence of disabled tests checkerEmil Engler2020-04-301-1/+1
| | | | Closes #5316
* test75: Remove precheck testDan Fandrich2020-04-303-40/+1
| | | | | This has not been needed since commit 9fa42bed and often prevents it from running at all with dynamic test ports.
* tests: Stop referring to server ports when they're not usedDan Fandrich2020-04-3025-25/+25
| | | | | | | | | Several tests referred to specific server ports even when the test didn't actually use that server or specify that it's needed. In such cases, the test harness substitutes the text "[not running]" as the port number which causes many such tests to fail due to the inability to parse the URL. These tests are changed to use %NOLISTENPORT which will always be substituted correctly.
* GnuTLS: Backend support for CURLINFO_SSL_VERIFYRESULTEmil Engler2020-04-303-5/+24
| | | | Closes #5287
* conncache: various concept cleanupsDaniel Stenberg2020-04-3010-127/+139
| | | | | | | | | | | | | | | | More connection cache accesses are protected by locks. CONNCACHE_* is a beter prefix for the connection cache lock macros. Curl_attach_connnection: now called as soon as there's a connection struct available and before the connection is added to the connection cache. Curl_disconnect: now assumes that the connection is already removed from the connection cache. Ref: #4915 Closes #5009
* tests: tests: run stunnel for HTTPS and FTPS on dynamic portsDaniel Stenberg2020-04-301-58/+72
| | | | | | | | | As stunnel is an external tool and it has no specific option to export the actually used port number when asked to listen to 0, runtests instead iterates over ten randomly picked high number ports and sticks to the first one stunnel can listen to. Closes #5267
* tests: pick a random port number for SSHDaniel Stenberg2020-04-301-56/+76
| | | | | | | Since sshd doesn't have such an option by itself, we iterate over a series of random ports until one works. Closes #5273
* libtest/cmake: Remove commented codeRikard Falkeborn2020-04-301-76/+0
| | | | | | | | These were commented out in e9dd0998706a when Makefile.inc was included instead. 11 years have passed since then and the commented code is of course very outdated. Remove it to avoid confusion. Closes #5311
* schannel: source code reindentDaniel Stenberg2020-04-291-131/+139
| | | | | | | White space edits only. Conform better to standard curl source code indenting style. Closes #5305
* test1177: look for curl.h in source directoryKamil Dudka2020-04-291-1/+1
| | | | | | If we use a separate build directory, there is no copy of the header. Closes #5310
* tests: look for preprocessed tests in build directoryKamil Dudka2020-04-291-1/+1
| | | | | | ... which is not always the same directory as source directory Closes #5310
* RELEASE-NOTES: syncedDaniel Stenberg2020-04-292-269/+9
| | | | ... and bumped curlver.h to 7.70.1
* RELEASE-NOTES: 7.70.0curl-7_70_0Daniel Stenberg2020-04-291-14/+36
|
* THANKS: synced with the 7.70.0 releaseDaniel Stenberg2020-04-291-0/+36
|
* headers: copyright range fixDaniel Stenberg2020-04-282-2/+2
|
* doh: Constify some input pointersRikard Falkeborn2020-04-283-17/+19
| | | | Closes #5306
* nss: check for PK11_CreateDigestContext() returning NULLDaniel Stenberg2020-04-271-0/+6
| | | | | | | | ... to avoid crashes! Reported-by: Hao Wu Fixes #5302 Closes #5303
* travis: bump the wolfssl CI build to use 4.4.0Daniel Stenberg2020-04-272-6/+6
| | | | Closes #5301
* copyright updates: adjust year rangesDaniel Stenberg2020-04-263-3/+3
|
* CI: do not include */ci branches in PR buildsMarc Hoersken2020-04-261-1/+0
| | | | Align Azure Pipelines with GitHub Actions.
* runtests: check for the disabled tests relative srcdirDaniel Stenberg2020-04-251-1/+1
| | | | | | | | | | To make it work correctly for out-of-tree builds. Follow-up to 75e8feb6fb08b Bug: https://github.com/curl/curl/pull/5288#issuecomment-619346389 Reported-by: Marcel Raad Closes #5297