Daniel Stenberg [Mon, 8 Oct 2018 13:03:21 +0000 (15:03 +0200)]
RELEASE-NOTES: synced
Daniel Stenberg [Sun, 7 Oct 2018 21:34:35 +0000 (23:34 +0200)]
curl_ntlm_wb: check aprintf() return codes
... when they return NULL we're out of memory and MUST return failure.
closes #3111
Daniel Stenberg [Sat, 29 Sep 2018 12:54:49 +0000 (14:54 +0200)]
docs/BUG-BOUNTY: proposed additional docs
Bug bounty explainer. See https://bountygraph.com/programs/curl
Closes #3067
Rick Deist [Sun, 7 Oct 2018 16:18:03 +0000 (19:18 +0300)]
hostip: fix check on Curl_shuffle_addr return value
Closes #3110
Daniel Stenberg [Thu, 4 Oct 2018 21:53:32 +0000 (23:53 +0200)]
FILE: fix CURLOPT_NOBODY and CURLOPT_HEADER output
Now FILE transfers send headers to the header callback like HTTP and
other protocols. Also made curl_easy_getinfo(...CURLINFO_PROTOCOL...)
work for FILE in the callbacks.
Makes "curl -i file://.." and "curl -I file://.." work like before
again. Applied the bold header logic to them too.
Regression from
c1c2762 (7.61.0)
Reported-by: Shaun Jackman
Fixes #3083
Closes #3101
Daniel Gustafsson [Sun, 7 Oct 2018 20:36:25 +0000 (22:36 +0200)]
gskit: make sure to terminate version string
In case a very small buffer was passed to the version function, it could
result in the buffer not being NULL-terminated since strncpy() doesn't
guarantee a terminator on an overflowed buffer. Rather than adding code
to terminate (and handle zero-sized buffers), move to using snprintf()
instead like all the other vtls backends.
Closes #3105
Reviewed-by: Daniel Stenberg <daniel@haxx.se>
Reviewed-by: Viktor Szakats <commit@vszakats.net>
Daniel Gustafsson [Sun, 7 Oct 2018 20:28:19 +0000 (22:28 +0200)]
TODO: add LD_PRELOAD support on macOS
Add DYLD_INSERT_LIBRARIES support to the TODO list. Reported in #2394.
Daniel Gustafsson [Sun, 7 Oct 2018 20:25:53 +0000 (22:25 +0200)]
runtests: skip ld_preload tests on macOS
The LD_PRELOAD functionality doesn't exist on macOS, so skip any tests
requiring it.
Fixes #2394
Closes #3106
Reported-by: Github user @jakirkham
Reviewed-by: Daniel Stenberg <daniel@haxx.se>
Marcel Raad [Fri, 5 Oct 2018 11:14:23 +0000 (13:14 +0200)]
AppVeyor: use Debug builds to run tests
This enables more tests.
Closes https://github.com/curl/curl/pull/3104
Marcel Raad [Fri, 5 Oct 2018 11:12:13 +0000 (13:12 +0200)]
AppVeyor: add HTTP_ONLY build
Closes https://github.com/curl/curl/pull/3104
Marcel Raad [Fri, 5 Oct 2018 11:09:24 +0000 (13:09 +0200)]
AppVeyor: add WinSSL builds
Use the oldest and latest Windows SDKs for them.
Also, remove all but one OpenSSL build.
Closes https://github.com/curl/curl/pull/3104
Marcel Raad [Fri, 5 Oct 2018 11:02:34 +0000 (13:02 +0200)]
AppVeyor: add remaining Visual Studio versions
This adds Visual Studio 9 and 10 builds.
There's no 64-bit VC9 compiler on AppVeyor, so use it as the Win32
build. Also, VC9 cannot be used for running the test suite.
Closes https://github.com/curl/curl/pull/3104
Marcel Raad [Fri, 5 Oct 2018 11:05:21 +0000 (13:05 +0200)]
AppVeyor: break long line
Closes https://github.com/curl/curl/pull/3104
Marcel Raad [Sun, 7 Oct 2018 09:04:15 +0000 (11:04 +0200)]
AppVeyor: remove unused BDIR variable
Closes https://github.com/curl/curl/pull/3104
Daniel Stenberg [Sat, 6 Oct 2018 11:31:33 +0000 (13:31 +0200)]
test2100: test DoH using IPv4-only
To make it only send one DoH request and avoid the race condition that
could lead to the requests getting sent in reversed order and thus
making it hard to compare in the test case.
Fixes #3107
Closes #3108
Daniel Stenberg [Sat, 6 Oct 2018 10:57:12 +0000 (12:57 +0200)]
tests/FILEFORMAT: mention how to use <fileN> and <stripfileN> too
[ci skip]
Daniel Stenberg [Fri, 5 Oct 2018 20:40:02 +0000 (22:40 +0200)]
RELEASE-NOTES: synced
dmitrykos [Tue, 25 Sep 2018 17:06:26 +0000 (20:06 +0300)]
timeval: fix use of weak symbol clock_gettime() on Apple platforms
Closes #3048
Daniel Stenberg [Thu, 4 Oct 2018 09:57:29 +0000 (11:57 +0200)]
doh: keep the IPv4 address in (original) network byte order
Ideally this will fix the reversed order shown in SPARC tests:
resp 8: Expected 127.0.0.1 got 1.0.0.127
Closes #3091
Jay Satiro [Fri, 5 Oct 2018 18:00:15 +0000 (14:00 -0400)]
INTERNALS.md: wrap lines longer than 79
Daniel Gustafsson [Fri, 5 Oct 2018 11:37:02 +0000 (13:37 +0200)]
INTERNALS: escape reference to parameter
The parameter reference <string> was causing rendering issues in the
generated HTML page, as <string> isn't a valid HTML tag. Fix by back-
tick escaping it.
Closes #3099
Reviewed-by: Jay Satiro <raysatiro@yahoo.com>
Reviewed-by: Daniel Stenberg <daniel@haxx.se>
Daniel Gustafsson [Fri, 5 Oct 2018 11:33:21 +0000 (13:33 +0200)]
checksrc: handle zero scoped ignore commands
If a !checksrc! disable command specified to ignore zero errors, it was
still added to the ignore block even though nothing was ignored. While
there were no blocks ignored that shouldn't be ignored, the processing
ended with with a warning:
<filename>:<line>:<col>: warning: Unused ignore: LONGLINE (UNUSEDIGNORE)
/* !checksrc! disable LONGLINE 0 */
^
Fix by instead treating a zero ignore as a a badcommand and throw a
warning for that one.
Closes #3096
Reviewed-by: Daniel Stenberg <daniel@haxx.se>
Daniel Gustafsson [Fri, 5 Oct 2018 11:29:37 +0000 (13:29 +0200)]
checksrc: enable strict mode and warnings
Enable strict and warnings mode for checksrc to ensure we aren't missing
anything due to bugs in the checking code. This uncovered a few things
which are all fixed in this commit:
* several variables were used uninitialized
* several variables were not defined in the correct scope
* the whitelist filehandle was read even if the file didn't exist
* the enable_warn() call when a disable counter had expired was passing
incorrect variables, but since the checkwarn() call is unlikely to hit
(the counter is only decremented to zero on actual ignores) it didn't
manifest a problem.
Closes #3090
Reviewed-by: Daniel Stenberg <daniel@haxx.se>
Reviewed-by: Marcel Raad <Marcel.Raad@teamviewer.com>
Marcel Raad [Fri, 5 Oct 2018 10:48:47 +0000 (12:48 +0200)]
CMake: suppress MSVC warning C4127 for libtest
It's issued by older Windows SDKs (prior to version 8.0).
Sergei Nikulov [Fri, 5 Oct 2018 10:17:43 +0000 (13:17 +0300)]
Merge branch 'dmitrykos-fix_missing_CMake_defines'
dmitrykos [Thu, 4 Oct 2018 18:31:23 +0000 (21:31 +0300)]
cmake: test and set missed defines during configuration
Added configuration checks for HAVE_BUILTIN_AVAILABLE and HAVE_CLOCK_GETTIME_MONOTONIC.
Closes #3097
Marcel Raad [Thu, 4 Oct 2018 18:31:50 +0000 (20:31 +0200)]
AppVeyor: disable test 500
It almost always results in
"starttransfer vs total: 0.000001 0.000000".
I cannot reproduce this locally, so disable it for now.
Closes https://github.com/curl/curl/pull/3100
Marcel Raad [Thu, 4 Oct 2018 18:22:39 +0000 (20:22 +0200)]
AppVeyor: set custom install prefix
CMake's default has spaces and in 32-bit mode parentheses, which result
in syntax errors in curl-config.
Closes https://github.com/curl/curl/pull/3100
Marcel Raad [Thu, 4 Oct 2018 18:08:07 +0000 (20:08 +0200)]
AppVeyor: Remove non-SSL non-test builds
They don't add much value.
Closes https://github.com/curl/curl/pull/3100
Marcel Raad [Tue, 2 Oct 2018 15:47:39 +0000 (17:47 +0200)]
AppVeyor: run test suite
Use the preinstalled MSYS2 bash for that.
Disable test 1139 as the CMake build doesn't generate curl.1.
Ref: https://github.com/curl/curl/issues/3070#issuecomment-
425922224
Closes https://github.com/curl/curl/pull/3100
Marcel Raad [Wed, 3 Oct 2018 17:21:12 +0000 (19:21 +0200)]
AppVeyor: use in-tree build
Required to run the tests.
Closes https://github.com/curl/curl/pull/3100
Daniel Stenberg [Thu, 4 Oct 2018 10:13:06 +0000 (12:13 +0200)]
doh: make sure TTL isn't re-inited by second (discarded?) response
Closes #3092
Daniel Stenberg [Thu, 4 Oct 2018 13:34:13 +0000 (15:34 +0200)]
test320: strip out more HTML when comparing
To make the test case work with different gnutls-serv versions better.
Reported-by: Kamil Dudka
Fixes #3093
Closes #3094
Marcel Raad [Thu, 4 Oct 2018 08:12:26 +0000 (10:12 +0200)]
runtests: use Windows paths for Windows curl
curl generated by CMake's Visual Studio generator has "Windows" in the
version number.
Colin Hogben [Tue, 2 Oct 2018 13:27:43 +0000 (14:27 +0100)]
tests/negtelnetserver.py: fix Python2-ism in neg TELNET server
Fix problems caused by differences in treatment of bytes objects between
python2 and python3.
Fixes #2929
Closes #3080
Daniel Gustafsson [Tue, 2 Oct 2018 22:56:29 +0000 (00:56 +0200)]
memory: ensure to check allocation results
The result of a memory allocation should always be checked, as we may
run under memory pressure where even a small allocation can fail. This
adds checking and error handling to a few cases where the allocation
wasn't checked for success. In the ftp case, the freeing of the path
variable is moved ahead of the allocation since there is little point
in keeping it around across the strdup, and the separation makes for
more readable code. In nwlib, the lock is aslo freed in the error path.
Also bumps the copyright years on affected files.
Closes #3084
Reviewed-by: Jay Satiro <raysatiro@yahoo.com>
Reviewed-by: Daniel Stenberg <daniel@haxx.se>
Daniel Gustafsson [Wed, 3 Oct 2018 08:27:27 +0000 (10:27 +0200)]
comment: Fix multiple typos in function parameters
Ensure that the parameters in the comment match the actual names in the
prototype.
Closes #3079
Reviewed-by: Daniel Stenberg <daniel@haxx.se>
Daniel Gustafsson [Wed, 3 Oct 2018 08:22:10 +0000 (10:22 +0200)]
CURLOPT_SSLVERSION.3: fix typos and consistent spelling
Use TLS vX.Y throughout the document, instead of TLS X.Y, as that was
already done in all but a few cases. Also fix a few typos.
Closes #3076
Reviewed-by: Marcel Raad <Marcel.Raad@teamviewer.com>
Reviewed-by: Daniel Stenberg <daniel@haxx.se>
Daniel Gustafsson [Wed, 3 Oct 2018 08:17:09 +0000 (10:17 +0200)]
SECURITY-PROCESS: make links into hyperlinks
Use proper Markdown hyperlink format for the Bountygraph links in order
for the generated website page to be more user friendly. Also link to
the sponsors to give them a little extra credit.
Closes #3082
Reviewed-by: Daniel Stenberg <daniel@haxx.se>
Jay Satiro [Wed, 3 Oct 2018 06:30:32 +0000 (02:30 -0400)]
CURLOPT_HEADER.3: fix typo
Jay Satiro [Wed, 3 Oct 2018 02:19:16 +0000 (22:19 -0400)]
nss: fix nssckbi module loading on Windows
- Use .DLL extension instead of .so to load modules on Windows.
Bug: https://curl.haxx.se/mail/lib-2018-09/0077.html
Reported-by: Maxime Legros
Ref: https://github.com/curl/curl/pull/3016/#issuecomment-
423069442
Closes https://github.com/curl/curl/pull/3086
Jay Satiro [Wed, 3 Oct 2018 01:55:57 +0000 (21:55 -0400)]
data-binary.d: clarify default content-type is x-www-form-urlencoded
- Advise user that --data-binary sends a default content type of
x-www-form-urlencoded, and to have the data treated as arbitrary
binary data by the server set the content-type header to octet-stream.
Ref: https://github.com/curl/curl/pull/2852#issuecomment-
426465094
Closes https://github.com/curl/curl/pull/3085
Marcel Raad [Tue, 2 Oct 2018 21:35:52 +0000 (23:35 +0200)]
test1299: use single quotes around asterisk
Ref: https://github.com/curl/curl/issues/1751#issuecomment-
321522580
Daniel Stenberg [Tue, 2 Oct 2018 11:55:36 +0000 (13:55 +0200)]
docs/CIPHERS: mention the colon separation for OpenSSL
Bug: #3077
Daniel Stenberg [Tue, 2 Oct 2018 07:08:56 +0000 (09:08 +0200)]
runtests: ignore disabled even when ranges are given
runtests.pl support running a range of tests, like "44 to 127". Starting
now, the code makes sure that even such given ranges will ignore tests
that are marked as disabled.
Disabled tests can still be run by explictly specifying that test
number.
Closes #3075
Daniel Stenberg [Mon, 1 Oct 2018 13:59:24 +0000 (15:59 +0200)]
urlapi: starting with a drive letter on win32 is not an abs url
... and libcurl doesn't support any single-letter URL schemes (if there
even exist any) so it should be fairly risk-free.
Reported-by: Marcel Raad
Fixes #3070
Closes #3071
Marcel Raad [Tue, 2 Oct 2018 09:15:29 +0000 (11:15 +0200)]
doh: fix curl_easy_setopt argument type
CURLOPT_POSTFIELDSIZE is long. Fixes a compiler warning on 64-bit
MinGW.
Daniel Stenberg [Mon, 1 Oct 2018 22:26:57 +0000 (00:26 +0200)]
RELEASE-NOTES: synced
Ruslan Baratov [Tue, 17 Jul 2018 23:31:51 +0000 (02:31 +0300)]
CMake: Improve config installation
Use 'GNUInstallDirs' standard module to set destinations of installed
files.
Use uppercase "CURL" names instead of lowercase "curl" to match standard
'FindCURL.cmake' CMake module:
* https://cmake.org/cmake/help/latest/module/FindCURL.html
Meaning:
* Install 'CURLConfig.cmake' instead of 'curl-config.cmake'
* User should call 'find_package(CURL)' instead of 'find_package(curl)'
Use 'configure_package_config_file' function to generate
'CURLConfig.cmake' file. This will make 'curl-config.cmake.in' template
file smaller and handle components better. E.g. current configuration
report no error if user specified unknown components (note: new
configuration expects no components, report error if user will try to
specify any).
Closes https://github.com/curl/curl/pull/2849
Daniel Stenberg [Sun, 30 Sep 2018 20:24:54 +0000 (22:24 +0200)]
test1650: make it depend on http/2
Follow-up to
570008c99da0ccbb as it gets link errors.
Reported-by: Michael Kaufmann
Closes #3068
Nate Prewitt [Mon, 1 Oct 2018 03:21:33 +0000 (21:21 -0600)]
MANUAL: minor grammar fix
Noticed a typo reading through the docs.
Closes #3069
Daniel Stenberg [Sat, 29 Sep 2018 12:08:29 +0000 (14:08 +0200)]
doh: only build if h2 enabled
The DoH spec says "HTTP/2 [RFC7540] is the minimum RECOMMENDED version
of HTTP for use with DoH".
Reported-by: Marcel Raad
Closes #3066
Daniel Stenberg [Sat, 29 Sep 2018 11:59:29 +0000 (13:59 +0200)]
test2100: require http2 to run
Reported-by: Marcel Raad
Fixes #3064
Closes #3065
Daniel Stenberg [Sat, 29 Sep 2018 09:32:07 +0000 (11:32 +0200)]
multi: fix memory leak in content encoding related error path
... a missing multi_done() call.
Credit to OSS-Fuzz
Bug: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10728
Closes #3063
Daniel Stenberg [Sat, 29 Sep 2018 09:19:47 +0000 (11:19 +0200)]
travis: bump the Secure Transport build to use xcode 10
Due to an issue with travis
(https://github.com/travis-ci/travis-ci/issues/9956) we've been using
Xcode 9.2 for darwinssl builds for a while. Now xcode 10 is offered as
an alternative and as it builds curl+darwinssl fine that seems like a
better choice.
Closes #3062
Rich Turner [Thu, 28 Jun 2018 22:25:00 +0000 (15:25 -0700)]
curl: enabled Windows VT Support and UTF-8 output
Enabled Console VT support (if running OS supports VT) in tool_main.c.
Fixes #3008
Closes #3011
Daniel Stenberg [Fri, 28 Sep 2018 08:58:28 +0000 (10:58 +0200)]
multi: fix location URL memleak in error path
Follow-up to #3044 - fix a leak OSS-Fuzz detected
Closes #3057
Sergei Nikulov [Fri, 7 Sep 2018 13:45:11 +0000 (16:45 +0300)]
cmake: fixed path used in generation of docs/tests during curl build through add_subdicectory(...)
Brad King [Fri, 21 Sep 2018 15:59:33 +0000 (11:59 -0400)]
cmake: Backport to work with CMake 3.0 again
Changes in commit
7867aaa9a0 (cmake: link curl to the OpenSSL targets
instead of lib absolute paths, 2018-07-17) and commit
f826b4ce98 (cmake:
bumped minimum version to 3.4, 2018-07-19) required CMake 3.4 to fix
issue #2746. This broke support for users on older versions of CMake
even if they just want to build curl and do not care whether transitive
dependencies work.
Backport the logic to work with CMake 3.0 again by implementing the
fix only when the version of CMake is at least 3.4.
Marcel Raad [Wed, 26 Sep 2018 12:43:58 +0000 (14:43 +0200)]
curl_threads: fix classic MinGW compile break
Classic MinGW still has _beginthreadex's return type as unsigned long
instead of uintptr_t [0]. uintptr_t is not even defined because of [1].
[0] https://sourceforge.net/p/mingw/mingw-org-wsl/ci/wsl-5.1-release/tree/mingwrt/include/process.h#l167
[1] https://sourceforge.net/p/mingw/mingw-org-wsl/ci/wsl-5.1-release/tree/mingwrt/include/process.h#l90
Bug: https://github.com/curl/curl/issues/2924#issuecomment-
424334807
Closes https://github.com/curl/curl/pull/3051
Daniel Stenberg [Wed, 26 Sep 2018 12:16:03 +0000 (14:16 +0200)]
configure: s/AC_RUN_IFELSE/CURL_RUN_IFELSE
fix a few leftovers
Fixes #3006
Closes #3049
Doron Behar [Wed, 26 Sep 2018 12:26:54 +0000 (15:26 +0300)]
example/htmltidy: fix include paths of tidy libraries
Closes #3050
Daniel Stenberg [Wed, 26 Sep 2018 08:41:04 +0000 (10:41 +0200)]
RELEASE-NOTES: synced
Daniel Stenberg [Tue, 25 Sep 2018 09:48:43 +0000 (11:48 +0200)]
Curl_http2_done: fix memleak in error path
Free 'header_recvbuf' unconditionally even if 'h2' isn't (yet) set, for
early failures.
Detected by OSS-Fuzz
Bug: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10669
Closes #3046
Daniel Stenberg [Tue, 25 Sep 2018 05:49:35 +0000 (07:49 +0200)]
http: fix memleak in rewind error path
If the rewind would fail, a strdup() would not get freed.
Detected by OSS-Fuzz
Bug: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10665
Closes #3044
Viktor Szakats [Mon, 24 Sep 2018 16:23:32 +0000 (16:23 +0000)]
test320: fix regression in [ci skip]
The value in question is coming directly from `gnutls-serv`, so it cannot
be modified freely.
Reported-by: Marcel Raad
Ref: https://github.com/curl/curl/commit/
6ae6b2a533e8630afbb21f570305bd4ceece6348#commitcomment-
30621004
Daniel Stenberg [Mon, 24 Sep 2018 12:05:24 +0000 (14:05 +0200)]
Curl_retry_request: fix memory leak
Detected by OSS-Fuzz
Bug: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10648
Closes #3042
Daniel Stenberg [Mon, 24 Sep 2018 06:26:58 +0000 (08:26 +0200)]
openssl: load built-in engines too
Regression since
38203f1
Reported-by: Jean Fabrice
Fixes #3023
Closes #3040
Christian Heimes [Fri, 21 Sep 2018 08:37:43 +0000 (10:37 +0200)]
OpenSSL: enable TLS 1.3 post-handshake auth
OpenSSL 1.1.1 requires clients to opt-in for post-handshake
authentication.
Fixes: https://github.com/curl/curl/issues/3026
Signed-off-by: Christian Heimes <christian@python.org>
Closes https://github.com/curl/curl/pull/3027
Even Rouault [Sun, 23 Sep 2018 12:17:30 +0000 (14:17 +0200)]
Curl_dedotdotify(): always nul terminate returned string.
This fixes potential out-of-buffer access on "file:./" URL
$ valgrind curl "file:./"
==24516== Memcheck, a memory error detector
==24516== Copyright (C) 2002-2015, and GNU GPL'd, by Julian Seward et al.
==24516== Using Valgrind-3.11.0 and LibVEX; rerun with -h for copyright info
==24516== Command: /home/even/install-curl-git/bin/curl file:./
==24516==
==24516== Conditional jump or move depends on uninitialised value(s)
==24516== at 0x4C31F9C: strcmp (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==24516== by 0x4EBB315: seturl (urlapi.c:801)
==24516== by 0x4EBB568: parseurl (urlapi.c:861)
==24516== by 0x4EBC509: curl_url_set (urlapi.c:1199)
==24516== by 0x4E644C6: parseurlandfillconn (url.c:2044)
==24516== by 0x4E67AEF: create_conn (url.c:3613)
==24516== by 0x4E68A4F: Curl_connect (url.c:4119)
==24516== by 0x4E7F0A4: multi_runsingle (multi.c:1440)
==24516== by 0x4E808E5: curl_multi_perform (multi.c:2173)
==24516== by 0x4E7558C: easy_transfer (easy.c:686)
==24516== by 0x4E75801: easy_perform (easy.c:779)
==24516== by 0x4E75868: curl_easy_perform (easy.c:798)
Was originally spotted by
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10637
Credit to OSS-Fuzz
Closes #3039
Viktor Szakats [Sun, 23 Sep 2018 22:26:11 +0000 (22:26 +0000)]
update URLs in tests
- and one in docs/MANUAL as well
Closes https://github.com/curl/curl/pull/3038
Viktor Szakats [Sun, 23 Sep 2018 22:24:02 +0000 (22:24 +0000)]
whitespace fixes
- replace tabs with spaces where possible
- remove line ending spaces
- remove double/triple newlines at EOF
- fix a non-UTF-8 character
- cleanup a few indentations/line continuations
in manual examples
Closes https://github.com/curl/curl/pull/3037
Daniel Stenberg [Sat, 22 Sep 2018 20:32:47 +0000 (22:32 +0200)]
http: add missing return code check
Detected by Coverity. CID
1439610.
Follow-up from
46e164069d1a523
Closes #3034
Daniel Stenberg [Sat, 22 Sep 2018 20:30:02 +0000 (22:30 +0200)]
ftp: don't access pointer before NULL check
Detected by Coverity. CID
1439611.
Follow-up from
46e164069d1a523
Daniel Stenberg [Sat, 22 Sep 2018 20:53:05 +0000 (22:53 +0200)]
unit1650: fix out of boundary access
Fixes #2987
Closes #3035
Viktor Szakats [Sun, 23 Sep 2018 09:20:26 +0000 (09:20 +0000)]
docs/examples: URL updates
- also update two URLs outside of docs/examples
- fix spelling of filename persistant.c
- fix three long lines that started failing checksrc.pl
Closes https://github.com/curl/curl/pull/3036
Viktor Szakats [Sat, 22 Sep 2018 21:44:36 +0000 (21:44 +0000)]
examples/Makefile.m32: sync with core [ci skip]
also:
- fix two warnings in synctime.c (one of them Windows-specific)
- upgrade URLs in synctime.c and remove a broken one
Closes https://github.com/curl/curl/pull/3033
Daniel Stenberg [Fri, 21 Sep 2018 12:44:40 +0000 (14:44 +0200)]
examples/parseurl.c: show off the URL API a bit
Closes #3030
Daniel Stenberg [Fri, 21 Sep 2018 21:21:30 +0000 (23:21 +0200)]
SECURITY-PROCESS: mention the bountygraph program [ci skip]
Closes #3032
Daniel Stenberg [Fri, 14 Sep 2018 21:33:28 +0000 (23:33 +0200)]
url: use the URL API internally as well
... to make it a truly unified URL parser.
Closes #3017
Viktor Szakats [Sat, 22 Sep 2018 07:58:05 +0000 (07:58 +0000)]
URL and mailmap updates, remove an obsolete directory [ci skip]
Closes https://github.com/curl/curl/pull/3031
Daniel Stenberg [Fri, 21 Sep 2018 22:16:57 +0000 (00:16 +0200)]
RELEASE-NOTES: synced
Daniel Stenberg [Fri, 21 Sep 2018 07:40:56 +0000 (09:40 +0200)]
configure: force-use -lpthreads on HPUX
When trying to detect pthreads use on HPUX the checks will succeed
without the correct -l option but then end up failing at run-time.
Reported-by: Eason-Yu on github
Fixes #2697
Closes #3025
Erik Minekus [Fri, 21 Sep 2018 12:20:18 +0000 (14:20 +0200)]
Curl_saferealloc: Fixed typo in docblock
Closes #3029
Daniel Stenberg [Fri, 21 Sep 2018 06:17:39 +0000 (08:17 +0200)]
urlapi: fix support for address scope in IPv6 numerical addresses
Closes #3024
Loganaden Velvindron [Mon, 10 Sep 2018 18:35:38 +0000 (22:35 +0400)]
GnutTLS: TLS 1.3 support
Closes #2971
Daniel Stenberg [Thu, 20 Sep 2018 21:56:20 +0000 (23:56 +0200)]
TODO: c-ares and CURLOPT_OPENSOCKETFUNCTION
Removed DoH.
Closes #2734
Jay Satiro [Tue, 18 Sep 2018 20:35:36 +0000 (16:35 -0400)]
vtls: fix ssl version "or later" behavior change for many backends
- Treat CURL_SSLVERSION_MAX_NONE the same as
CURL_SSLVERSION_MAX_DEFAULT. Prior to this change NONE would mean use
the minimum version also as the maximum.
This is a follow-up to
6015cef which changed the behavior of setting
the SSL version so that the requested version would only be the minimum
and not the maximum. It appears it was (mostly) implemented in OpenSSL
but not other backends. In other words CURL_SSLVERSION_TLSv1_0 used to
mean use just TLS v1.0 and now it means use TLS v1.0 *or later*.
- Fix CURL_SSLVERSION_MAX_DEFAULT for OpenSSL.
Prior to this change CURL_SSLVERSION_MAX_DEFAULT with OpenSSL was
erroneously treated as always TLS 1.3, and would cause an error if
OpenSSL was built without TLS 1.3 support.
Co-authored-by: Daniel Gustafsson
Fixes https://github.com/curl/curl/issues/2969
Closes https://github.com/curl/curl/pull/3012
Daniel Stenberg [Wed, 19 Sep 2018 07:04:48 +0000 (09:04 +0200)]
certs: generate tests certs with sha256 digest algorithm
As OpenSSL 1.1.1 starts to complain and fail on sha1 CAs:
"SSL certificate problem: CA signature digest algorithm too weak"
Closes #3014
Daniel Stenberg [Wed, 19 Sep 2018 09:28:40 +0000 (11:28 +0200)]
urlapi: document the error codes, remove two unused ones
Assisted-by: Daniel Gustafsson
Closes #3019
Daniel Stenberg [Wed, 19 Sep 2018 08:17:03 +0000 (10:17 +0200)]
urlapi: add CURLU_GUESS_SCHEME and fix hostname acceptance
In order for this API to fully work for libcurl itself, it now offers a
CURLU_GUESS_SCHEME flag that makes it "guess" scheme based on the host
name prefix just like libcurl always did. If there's no known prefix, it
will guess "http://".
Separately, it relaxes the check of the host name so that IDN host names
can be passed in as well.
Both these changes are necessary for libcurl itself to use this API.
Assisted-by: Daniel Gustafsson
Closes #3018
Kamil Dudka [Wed, 19 Sep 2018 08:05:56 +0000 (10:05 +0200)]
nss: try to connect even if libnssckbi.so fails to load
One can still use CA certificates stored in NSS database.
Reported-by: Maxime Legros
Bug: https://curl.haxx.se/mail/lib-2018-09/0077.html
Closes #3016
Daniel Gustafsson [Wed, 19 Sep 2018 11:44:10 +0000 (13:44 +0200)]
urlapi: don't set value which is never read
In the CURLUPART_URL case, there is no codepath which invokes url
decoding so remove the assignment of the urldecode variable. This
fixes the deadstore bug-report from clang static analysis.
Closes #3015
Reviewed-by: Daniel Stenberg <daniel@haxx.se>
Daniel Gustafsson [Wed, 19 Sep 2018 07:12:45 +0000 (09:12 +0200)]
todo: Update reference to already done item
TODO item 1.1 was implemented in commit
946ce5b61f, update reference
to it with instead referencing the implemented option.
Closes #3013
Reviewed-by: Daniel Stenberg <daniel@haxx.se>
Daniel Stenberg [Tue, 18 Sep 2018 14:45:58 +0000 (16:45 +0200)]
RELEASE-NOTES: synced
slodki [Sat, 15 Sep 2018 23:15:08 +0000 (01:15 +0200)]
cmake: don't require OpenSSL if USE_OPENSSL=OFF
User must have OpenSSL installed even if not used by libcurl at all
since 7.61.1 release. Broken at
7867aaa9a01decf93711428462335be8cef70212
Reviewed-by: Sergei Nikulov
Closes #3001
Daniel Stenberg [Sat, 15 Sep 2018 22:16:49 +0000 (00:16 +0200)]
curl_multi_wait: call getsock before figuring out timeout
.... since getsock may update the expiry timer.
Fixes #2996
Closes #3000
Daniel Stenberg [Sun, 16 Sep 2018 22:31:34 +0000 (00:31 +0200)]
examples/http2-pushinmemory: receive HTTP/2 pushed files in memory
Closes #3004
Daniel Gustafsson [Tue, 18 Sep 2018 07:06:07 +0000 (09:06 +0200)]
darwinssl: Fix realloc memleak
The reallocation was using the input pointer for the return value, which
leads to a memory leak on reallication failure. Fix by instead use the
safe internal API call Curl_saferealloc().
Closes #3005
Reviewed-by: Daniel Stenberg <daniel@haxx.se>
Reviewed-by: Nick Zitzmann <nickzman@gmail.com>
Kruzya [Sat, 15 Sep 2018 05:55:11 +0000 (08:55 +0300)]
examples: Fix memory leaks from realloc errors
Make sure to not overwrite the reallocated pointer in realloc() calls
to avoid a memleak on memory errors.