summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* test1541: treaded connection sharingbagder/multithreaded-testDaniel Stenberg2019-03-174-2/+189
| | | | | The threaded-shared-conn.c example turned into test case. Only works if pthread was detected.
* conncache: use conn->data to know if a transfer owns itDaniel Stenberg2019-03-172-7/+11
| | | | | | | | | | | | | - make sure an already "owned" connection isn't returned unless multiplexed. - clear ->data when returning the connection to the cache again Regression since 7.62.0 (probably in commit 1b76c38904f0) Bug: https://curl.haxx.se/mail/lib-2019-03/0064.html Closes #3686
* RELEASE-NOTES: syncedDaniel Stenberg2019-03-151-12/+32
|
* configure: add --with-amisslChris Young2019-03-158-21/+194
| | | | | | | | | | AmiSSL is an Amiga native library which provides a wrapper over OpenSSL. It also requires all programs using it to use bsdsocket.library directly, rather than accessing socket functions through clib, which libcurl was not necessarily doing previously. Configure will now check for the headers and ensure they are included if found. Closes #3677
* vtls: rename some of the SSL functionsChris Young2019-03-152-5/+5
| | | | | ... in the SSL structure as AmiSSL is using macros for the socket API functions.
* tool_getpass: termios.h is present on AmigaOS 3, but no tcgetattr/tcsetattrChris Young2019-03-151-1/+5
|
* tool_operate: build on AmigaOSChris Young2019-03-151-3/+7
|
* makefile: make checksrc and hugefile commands "silent"Daniel Stenberg2019-03-147-25/+65
| | | | | | | ... to match the style already used for compiling, linking etc. Acknowledges 'make V=1' to enable verbose. Closes #3681
* curl.1: --user and --proxy-user are hidden from ps outputDaniel Stenberg2019-03-142-0/+12
| | | | | | | | Suggested-by: Eric Curtin Improved-by: Dan Fandrich Ref: #3680 Closes #3683
* curl.1: mark the argument to --cookie as <data|filename>Daniel Stenberg2019-03-142-2/+2
| | | | | | | | From a discussion in #3676 Suggested-by: Tim Rühsen Closes #3682
* fuzzer: Only clone the latest fuzzer code, for speed.Dan Fandrich2019-03-141-1/+1
|
* Negotiate: fix for HTTP POST with NegotiateDominik Hölzl2019-03-1410-116/+199
| | | | | | | | | | | | | | | | | | | | | | | | * Adjusted unit tests 2056, 2057 * do not generally close connections with CURLAUTH_NEGOTIATE after every request * moved negotiatedata from UrlState to connectdata * Added stream rewind logic for CURLAUTH_NEGOTIATE * introduced negotiatedata::GSS_AUTHDONE and negotiatedata::GSS_AUTHSUCC * Consider authproblem state for CURLAUTH_NEGOTIATE * Consider reuse_forbid for CURLAUTH_NEGOTIATE * moved and adjusted negotiate authentication state handling from output_auth_headers into Curl_output_negotiate * Curl_output_negotiate: ensure auth done is always set * Curl_output_negotiate: Set auth done also if result code is GSS_S_CONTINUE_NEEDED/SEC_I_CONTINUE_NEEDED as this result code may also indicate the last challenge request (only works with disabled Expect: 100-continue and CURLOPT_KEEP_SENDING_ON_ERROR -> 1) * Consider "Persistent-Auth" header, detect if not present; Reset/Cleanup negotiate after authentication if no persistent authentication * apply changes introduced with #2546 for negotiate rewind logic Fixes #1261 Closes #1975
* http: send payload when (proxy) authentication is doneMarc Schlatter2019-03-132-3/+5
| | | | | | | | | | | The check that prevents payload from sending in case of authentication doesn't check properly if the authentication is done or not. They're cases where the proxy respond "200 OK" before sending authentication challenge. This change takes care of that. Fixes #2431 Closes #3669
* file: fix "Checking if unsigned variable 'readcount' is less than zero."Daniel Stenberg2019-03-121-2/+2
| | | | | | Pointed out by codacy Closes #3672
* memdebug: log pointer before freeing its dataDaniel Stenberg2019-03-122-5/+5
| | | | | | | | | | | | Coverity warned for two potentional "Use after free" cases. Both are false positives because the memory wasn't used, it was only the actual pointer value that was logged. The fix still changes the order of execution to avoid the warnings. Coverity CID 1443033 and 1443034 Closes #3671
* RELEASE-NOTES: syncedDaniel Stenberg2019-03-121-10/+26
|
* travis: actually use updated compiler versionsMarcel Raad2019-03-121-29/+79
| | | | | | | | | | | | | | | For the Linux builds, GCC 8 and 7 and clang 7 were installed, but the new GCC versions were only used for the coverage build and for building nghttp2, while the new clang version was not used at all. BoringSSL needs to use the default GCC as it respects CC, but not CXX, so it would otherwise pass gcc 8 options to g++ 4.8 and fail. Also remove GCC 7, it's not needed anymore. Ref: https://docs.travis-ci.com/user/languages/c/#c11c11-and-beyond-and-toolchain-versioning Closes https://github.com/curl/curl/pull/3670
* travis: update clang to version 7Marcel Raad2019-03-121-3/+3
| | | | Closes https://github.com/curl/curl/pull/3670
* examples/externalsocket: add missing close socket callsAndre Guibert de Bruet2019-03-111-1/+9
| | | | | | | | | | .. and for Windows also call WSACleanup since we call WSAStartup. The example is to demonstrate handling the socket independently of libcurl. In this case libcurl is not responsible for creating, opening or closing the socket, it is handled by the application (our example). Fixes https://github.com/curl/curl/pull/3663
* multi: removed unused code for request retriesDaniel Stenberg2019-03-111-72/+0
| | | | | | | | This code was once used for the non multi-interface using code path, but ever since easy_perform was turned into a wrapper around the multi interface, this code path never runs. Closes #3666
* doh: inherit some SSL options from user's easy handleJay Satiro2019-03-111-3/+68
| | | | | | | | | | | | | | | | | | | | | | | | - Inherit SSL options for the doh handle but not SSL client certs, SSL ALPN/NPN, SSL engine, SSL version, SSL issuer cert, SSL pinned public key, SSL ciphers, SSL id cache setting, SSL kerberos or SSL gss-api settings. - Fix inheritance of verbose setting. - Inherit NOSIGNAL. There is no way for the user to set options for the doh (DNS-over-HTTPS) handles and instead we inherit some options from the user's easy handle. My thinking for the SSL options not inherited is they are most likely not intended by the user for the DOH transfer. I did inherit insecure because I think that should still be in control of the user. Prior to this change doh did not work for me because CAINFO was not inherited. Also verbose was set always which AFAICT was a bug (#3660). Fixes https://github.com/curl/curl/issues/3660 Closes https://github.com/curl/curl/pull/3661
* test331: verify set-cookie for dotless host nameDaniel Stenberg2019-03-092-1/+66
| | | | | Reproduced bug #3649 Closes #3659
* Revert "cookies: extend domain checks to non psl builds"Daniel Stenberg2019-03-092-9/+5
| | | | | | | This reverts commit 3773de378d48b06c09931e44dca4d274d0bfdce0. Regression shipped in 7.64.0 Fixes #3649
* memdebug: make debug-specific functions use curl_dbg_ prefixDaniel Stenberg2019-03-087-167/+149
| | | | | | | To not "collide" or use up the regular curl_ name space. Also makes them easier to detect in helper scripts. Closes #3656
* cmdline-opts/proxytunnel.d: the option tunnnels all protocolsDaniel Stenberg2019-03-081-5/+4
| | | | | | | Clarify the language and simplify. Reported-by: Daniel Lublin Closes #3658
* KNOWN_BUGS: Client cert (MTLS) issues with SchannelDaniel Stenberg2019-03-071-0/+5
| | | | Closes #3145
* ROADMAP: updated to some more current things to work onDaniel Stenberg2019-03-071-14/+44
|
* tests: fix multiple may be used uninitialized warningsDaniel Stenberg2019-03-056-12/+14
|
* RELEASE-NOTES: syncedDaniel Stenberg2019-03-051-1/+16
|
* source: fix two 'nread' may be used uninitialized warningsDaniel Stenberg2019-03-052-4/+4
| | | | | | Both seem to be false positives but we don't like warnings. Closes #3646
* gopher: remove check for path == NULLDaniel Stenberg2019-03-051-1/+4
| | | | | | | | | | | Since it can't be NULL and it makes Coverity believe we lack proper NULL checks. Verified by test 659, landed in commit 15401fa886b. Pointed out by Coverity CID 1442746. Assisted-by: Dan Fandrich Fixes #3617 Closes #3642
* examples: only include <curl/curl.h>Daniel Stenberg2019-03-052-3/+2
| | | | | | | That's the only public curl header we should encourage use of. Reviewed-by: Marcel Raad Closes #3645
* ssh: loop the state machine if not done and not blockingDaniel Stenberg2019-03-051-4/+7
| | | | | | | | | | | | | | If the state machine isn't complete, didn't fail and it didn't return due to blocking it can just as well loop again. This addresses the problem with SFTP directory listings where we would otherwise return back to the parent and as the multi state machine doesn't have any code for using CURLM_CALL_MULTI_PERFORM for as long the doing phase isn't complete, it would return out when in reality there was more data to deal with. Fixes #3506 Closes #3644
* multi: support verbose conncache closure handleJay Satiro2019-03-052-0/+6
| | | | | | | | | | | | | | | | | - Change closure handle to receive verbose setting from the easy handle most recently added via curl_multi_add_handle. The closure handle is a special easy handle used for closing cached connections. It receives limited settings from the easy handle most recently added to the multi handle. Prior to this change that did not include verbose which was a problem because on connection shutdown verbose mode was not acknowledged. Ref: https://github.com/curl/curl/pull/3598 Co-authored-by: Daniel Stenberg Closes https://github.com/curl/curl/pull/3618
* CURLU: fix NULL dereference when used over proxyDaniel Stenberg2019-03-046-4/+140
| | | | | | | | Test 659 verifies Also fixed the test 658 name Closes #3641
* altsvc_out: check the return code from Curl_gmtimeDaniel Stenberg2019-03-031-1/+3
| | | | | | Pointed out by Coverity, CID 1442956. Closes #3640
* docs/ALTSVC.md: docs describing the approachDaniel Stenberg2019-03-032-0/+60
| | | | Closes #3498
* alt-svc: add a travis buildDaniel Stenberg2019-03-031-1/+5
|
* alt-svc: add test 355 and 356 to verify with command line curlDaniel Stenberg2019-03-034-2/+135
|
* alt-svc: the curl command line bitsDaniel Stenberg2019-03-037-9/+44
|
* alt-svc: the libcurl bitsDaniel Stenberg2019-03-0325-32/+1180
|
* travis: add build using gnutlsDaniel Stenberg2019-03-021-0/+5
| | | | Closes #3637
* RELEASE-NOTES: syncedDaniel Stenberg2019-03-021-8/+54
|
* scripts/completion.pl: also generate fish completion fileSimon Legner2019-03-026-99/+179
| | | | | | This is the renamed script formerly known as zsh.pl Closes #3545
* gnutls: remove call to deprecated gnutls_compression_get_nameDaniel Stenberg2019-03-021-6/+1
| | | | | | | | | | It has been deprecated by GnuTLS since a year ago and now causes build warnings. Ref: https://gitlab.com/gnutls/gnutls/commit/b0041897d2846737f5fb0f Docs: https://www.gnutls.org/manual/html_node/Compatibility-API.html Closes #3636
* system_win32: move win32_init here from easy.cJay Satiro2019-03-023-90/+90
| | | | | | | | | | .. since system_win32 is a more appropriate location for the functions and to extern the globals. Ref: https://github.com/curl/curl/commit/ca597ad#r32446578 Reported-by: Gisle Vanem Closes https://github.com/curl/curl/pull/3625
* curl_easy_duphandle.3: clarify that a duped handle has no sharesDaniel Stenberg2019-03-011-4/+6
| | | | | | | Reported-by: Sara Golemon Fixes #3592 Closes #3634
* 10-at-a-time.c: fix too long lineDaniel Stenberg2019-03-011-1/+1
|
* examples: various fixes in ephiperfifo.cArnaud Rebillout2019-03-011-9/+12
| | | | | | | | | | | | | | | | | | | | The main change here is the timer value that was wrong, it was given in usecs (ms * 1000), while the itimerspec struct wants nsecs (ms * 1000 * 1000). This resulted in the callback being invoked WAY TOO OFTEN. As a quick check you can run this command before and after applying this commit: # shell 1 ./ephiperfifo 2>&1 | tee ephiperfifo.log # shell 2 echo http://hacking.elboulangero.com > hiper.fifo Then just compare the size of the logs files. Closes #3633 Fixes #3632 Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
* urldata: simplify bytecountersDaniel Stenberg2019-03-0122-176/+111
| | | | | | | | | | | | | - no need to have them protocol specific - no need to set pointers to them with the Curl_setup_transfer() call - make Curl_setup_transfer() operate on a transfer pointer, not connection - switch some counters from long to the more proper curl_off_t type Closes #3627