summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* schannel: client certificate store opening fixkarpenko/sclient-cert-store-openIhor Karpenko2018-08-231-5/+8
| | | | | | | | | | | | | | | | | 1) Using CERT_STORE_OPEN_EXISTING_FLAG ( or CERT_STORE_READONLY_FLAG ) while opening certificate store would be sufficient in this scenario and less-demanding in sense of required user credentials ( for example, IIS_IUSRS will get "Access Denied" 0x05 error for existing CertOpenStore call without any of flags mentioned above ), 2) as 'cert_store_name' is a DWORD, attempt to format its value like a string ( in "Failed to open cert store" error message ) will throw null pointer exception 3) adding GetLastError(), in my opinion, will make error message more useful. Bug: https://curl.haxx.se/mail/lib-2018-08/0198.html
* libcurl-thread.3: expand somewhat on the NO_SIGNAL motivationDaniel Stenberg2018-08-231-3/+9
| | | | | | | | | | | Multi-threaded applictions basically MUST set CURLOPT_NO_SIGNAL to 1L to avoid the risk of getting a SIGPIPE. Either way, a multi-threaded application that uses libcurl/openssl needs to have a signhandler for or ignore SIGPIPE on its own. Based on discussions in #2800 Closes #2904
* RELEASE-NOTES: syncedDaniel Stenberg2018-08-221-1/+11
|
* Tests: fixes for WindowsMarcel Raad2018-08-222-1/+4
| | | | | - test 1268 requires unix sockets - test 2072 must be disabled also for MSYS/MinGW
* http2: abort the send_callback if not setup yetDaniel Stenberg2018-08-221-0/+4
| | | | | | | | When Curl_http2_done() gets called before the http2 data is setup all the way, we cannot send anything and this should just return an error. Detected by OSS-Fuzz Bug: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10012
* http2: remove four unused nghttp2 callbacksDaniel Stenberg2018-08-211-77/+0
| | | | Closes #2903
* x509asn1: use FALLTHROUGHDaniel Stenberg2018-08-211-2/+2
| | | | ... as no other comments are accepted since 014ed7c22f51463
* test1148: disable if decimal separator is not pointMarcel Raad2018-08-214-0/+54
| | | | | | | | | Modifying the locale with environment variables doesn't work for native Windows applications. Just disable the test in this case if the decimal separator is something different than a point. Use a precheck with a small C program to achieve that. Closes https://github.com/curl/curl/pull/2786
* Enable more GCC warningsMarcel Raad2018-08-211-1/+15
| | | | | | | | | | | | | | This enables the following additional warnings: -Wold-style-definition -Warray-bounds=2 instead of the default 1 -Wformat=2, but only for GCC 4.8+ as Wno-format-nonliteral is not respected for older versions -Wunused-const-variable, which enables level 2 instead of the default 1 -Warray-bounds also in debug mode through -ftree-vrp -Wnull-dereference also in debug mode through -fdelete-null-pointer-checks Closes https://github.com/curl/curl/pull/2747
* curl-compilers: enable -Wimplicit-fallthrough=4 for GCCMarcel Raad2018-08-218-10/+12
| | | | | | | | This enables level 4 instead of the default level 3, which of the currently used comments only allows /* FALLTHROUGH */ to silence the warning. Closes https://github.com/curl/curl/pull/2747
* curl-compilers: enable -Wbad-function-cast on GCCMarcel Raad2018-08-215-5/+12
| | | | | | | This warning used to be enabled only for clang as it's a bit stricter on GCC. Silence the remaining occurrences and enable it on GCC too. Closes https://github.com/curl/curl/pull/2747
* configure: conditionally enable pedantic-errorsMarcel Raad2018-08-212-1/+8
| | | | | | | | | | | | | | | Enable pedantic-errors for GCC >= 5 with --enable-werror. Before GCC 5, pedantic-errors was synonymous to -Werror=pedantic [0], which is still the case for clang [1]. With GCC 5, it became complementary [2]. Also fix a resulting error in acinclude.m4 as main's return type was missing, which is illegal in C99. [0] https://gcc.gnu.org/onlinedocs/gcc-4.9.0/gcc/Warning-Options.html [1] https://clang.llvm.org/docs/UsersManual.html#options-to-control-error-and-warning-messages [2] https://gcc.gnu.org/onlinedocs/gcc-5.1.0/gcc/Warning-Options.html Closes https://github.com/curl/curl/pull/2747
* Remove unused definitionsMarcel Raad2018-08-212-3/+0
| | | | Closes https://github.com/curl/curl/pull/2747
* x509asn1: make several functions staticDaniel Stenberg2018-08-211-63/+59
| | | | | | and remove the private SIZE_T_MAX define and use the generic one. Closes #2902
* INTERNALS: require GnuTLS >= 2.11.3Daniel Stenberg2018-08-211-1/+1
| | | | | | | Since the public pinning support was brought in e644866caf4. GnuTLS 2.11.3 was released in October 2010. Figured out in #2890
* http2: avoid set_stream_user_data() before stream is assignedDaniel Stenberg2018-08-211-1/+2
| | | | | | | ... before the stream is started, we have it set to -1. Fixes #2894 Closes #2898
* SSLCERTS: improve the openssl command lineDaniel Stenberg2018-08-201-2/+2
| | | | | ... for extracting certs from a live HTTPS server to make a cacerts.pem from them.
* docs/SECURITY-PROCESS: now we name the files after the CVE idDaniel Stenberg2018-08-201-7/+2
|
* RELEASE-NOTES: syncedDaniel Stenberg2018-08-191-11/+26
|
* upload: change default UPLOAD_BUFSIZE to 64KBDaniel Stenberg2018-08-182-3/+8
| | | | | | | To make uploads significantly faster in some circumstances. Part 2 of #2888 Closes #2892
* upload: allocate upload buffer on-demandDaniel Stenberg2018-08-187-24/+59
| | | | | | | Saves 16KB on the easy handle for operations that don't need that buffer. Part 1 of #2888
* vtls: reinstantiate engine on duplicated handlesLaurent Bonnans2018-08-183-2/+15
| | | | | | | | | | | | Handles created with curl_easy_duphandle do not use the SSL engine set up in the original handle. This fixes the issue by storing the engine name in the internal url state and setting the engine from its name inside curl_easy_duphandle. Reported-by: Anton Gerasimov Signed-of-by: Laurent Bonnans Fixes #2829 Closes #2833
* http2: make sure to send after RST_STREAMDaniel Stenberg2018-08-171-2/+7
| | | | | | | | | If this is the last stream on this connection, the RST_STREAM might not get pushed to the wire otherwise. Fixes #2882 Closes #2887 Researched-by: Michael Kaufmann
* test1268: check the stderr output as "text"Daniel Stenberg2018-08-161-1/+1
| | | | | | Follow-up to 099f37e9c57 Pointed-out-by: Marcel Raad
* urldata: remove unused pipe_broke struct fieldDaniel Stenberg2018-08-162-28/+3
| | | | | | | This struct field is never set TRUE in any existing code path. This change removes the field completely. Closes #2871
* curl: warn the user if a given file name looks like an optionDaniel Stenberg2018-08-153-23/+70
| | | | | | | | | | ... simply because this is usually a sign of the user having omitted the file name and the next option is instead "eaten" by the parser as a file name. Add test1268 to verify Closes #2885
* http2: check nghttp2_session_set_stream_user_data return codeDaniel Stenberg2018-08-151-7/+32
| | | | | | Might help bug #2688 debugging Closes #2880
* travis: revert back to gcc-7 for coverage buildsDaniel Stenberg2018-08-151-3/+4
| | | | | | | | ... since the gcc-8 ones seem to fail frequently. Follow-up from b85207199544ca Closes #2886
* RELEASE-NOTES: syncedDaniel Stenberg2018-08-151-59/+79
| | | | ... and now listed in alphabetical order!
* CMake: CMake config files are defining CURL_STATICLIB for static buildsAdrien2018-08-151-0/+4
| | | | | | | | | | | | This change allows to use the CMake config files generated by Curl's CMake scripts for static builds of the library. The symbol CURL_STATIC lib must be defined to compile downstream, thus the config package is the perfect place to do so. Fixes #2817 Closes #2823 Reported-by: adnn on github Reviewed-by: Sergei Nikulov
* TODO: host name sections in config filesDaniel Stenberg2018-08-151-0/+8
|
* ssh-libssh: fix infinite connect loop on invalid private keyKamil Dudka2018-08-143-1/+35
| | | | | | | | Added test 656 (based on test 604) to verify the fix. Bug: https://bugzilla.redhat.com/1595135 Closes #2879
* ssh-libssh: reduce excessive verbose output about pubkey authKamil Dudka2018-08-141-2/+1
| | | | | | | | | | The verbose message "Authentication using SSH public key file" was printed each time the ssh_userauth_publickey_auto() was called, which meant each time a packet was transferred over network because the API operates in non-blocking mode. This patch makes sure that the verbose message is printed just once (when the authentication state is entered by the SSH state machine).
* travis: disable h2 torture tests for "coverage"Daniel Stenberg2018-08-141-1/+1
| | | | | | Since they started to fail almost 100% since a few days. Closes #2876
* travis: update to GCC 8Marcel Raad2018-08-141-7/+7
| | | | Closes https://github.com/curl/curl/pull/2869
* http: fix for tiny "HTTP/0.9" responseDaniel Stenberg2018-08-1311-44/+164
| | | | | | | | | | | Deal with tiny "HTTP/0.9" (header-less) responses by checking the status-line early, even before a full "HTTP/" is received to allow detecting 0.9 properly. Test 1266 and 1267 added to verify. Fixes #2420 Closes #2872
* docs: add disallow-username-in-url.d and haproxy-protocol.d on the listKamil Dudka2018-08-131-1/+2
| | | | | | ... to make make the files appear in distribution tarballs Closes #2856
* .travis.yml: verify that man pages can be regeneratedKamil Dudka2018-08-131-1/+2
| | | | | | ... when curl is built from distribution tarball Closes #2856
* Split non-portable part off test 1133Marcel Raad2018-08-113-7/+105
| | | | | | | | | Split off testing file names with double quotes into new test 1158. Disable it for MSYS using a precheck as it doesn't support file names with double quotes (but Cygwin does, for example). Fixes https://github.com/curl/curl/issues/2796 Closes https://github.com/curl/curl/pull/2854
* projects: Improve Windows perl detection in batch scriptsJay Satiro2018-08-112-20/+15
| | | | | | | | | | | - Determine if perl is in the user's PATH by running perl.exe. Prior to this change detection was done by checking the PATH for perl/ but that did not work in all cases (eg git install includes perl but not in perl/ path). Bug: https://github.com/curl/curl/pull/2865 Reported-by: Daniel JeliƄski
* docs: Improve the manual pages of some callbacksMichael Kaufmann2018-08-115-15/+21
| | | | | | | | | | - CURLOPT_HEADERFUNCTION: add newlines - CURLOPT_INTERLEAVEFUNCTION: fix the description of 'userdata' - CURLOPT_READDATA: mention crashes, same as in CURLOPT_WRITEDATA - CURLOPT_READFUNCTION: rename 'instream' to 'userdata' and explain how to set it Closes https://github.com/curl/curl/pull/2868
* GCC: silence -Wcast-function-type uniformlyMarcel Raad2018-08-112-30/+31
| | | | | Pointed-out-by: Rikard Falkeborn Closes https://github.com/curl/curl/pull/2860
* Silence GCC 8 cast-function-type warningsMarcel Raad2018-08-114-3/+13
| | | | | | | | | | On Windows, casting between unrelated function types is fine and sometimes even necessary, so just use an intermediate cast to (void (*) (void)) to silence the warning as described in [0]. [0] https://gcc.gnu.org/onlinedocs/gcc-8.1.0/gcc/Warning-Options.html Closes https://github.com/curl/curl/pull/2860
* CURLINFO_SIZE_UPLOAD: fix missing counter updateDaniel Stenberg2018-08-115-2/+147
| | | | | | | | Adds test 1522 for verification. Reported-by: cjmsoregan Fixes #2847 Closes #2864
* Documentation: fix CURLOPT_SSH_COMPRESSION copy/paste bugDaniel Jelinski2018-08-101-2/+2
| | | | Closes #2867
* RELEASE-NOTES: syncedDaniel Stenberg2018-08-101-8/+29
|
* openssl: fix potential NULL pointer deref in is_pkcs11_uriDaniel Stenberg2018-08-101-6/+1
| | | | | Follow-up to 298d2565e Coverity CID 1438387
* travis: execute "set -eo pipefail" for coverage buildMarcel Raad2018-08-101-2/+1
| | | | | | | Follow-up to 2de63ab179eb78630ee039ad94fb2a5423df522d and 0b87c963252d3504552ee0c8cf4402bd65a80af5. Closes https://github.com/curl/curl/pull/2862
* lib1502: fix memory leak in torture testDaniel Stenberg2018-08-101-0/+2
| | | | | | Reported-by: Marcel Raad Fixes #2861 Closes #2863
* docs: mention NULL is fine input to several functionsDaniel Stenberg2018-08-107-7/+26
| | | | | | Fixes #2837 Closes #2858 Reported-by: Markus Elfring