1
0
mirror of https://github.com/moparisthebest/curl synced 2024-11-15 22:15:13 -05:00
Commit Graph

27464 Commits

Author SHA1 Message Date
Daniel Stenberg
04cca4f5f1
winbuild/MakefileBuild.vc: bump copyright year 2021-07-21 08:42:19 +02:00
Jay Satiro
ecf0225461 docs: mention max-filesize options also apply to MQTT transfers
Also make it clearer that the caveat 'if the file size is unknown it
the option will have no effect' may apply to protocols other than FTP
and HTTP.

Reported-by: Josh Soref

Fixes https://github.com/curl/curl/issues/7453
2021-07-21 01:03:06 -04:00
Josh Soref
9bd629bfad docs/cmdline: fix grammar and typos 2021-07-20 15:18:37 -04:00
Josh Soref
df41598f3c dump-header.d: Drop suggestion to use for cookie storage
Since --cookie-jar is the preferred way to store cookies, no longer
suggest using --dump-header to do so.

Co-authored-by: Daniel Stenberg

Closes https://github.com/curl/curl/issues/7414
2021-07-20 14:59:15 -04:00
Josh Soref
f6401b26c8 doc/cmdline: fix grammar and typos
Closes https://github.com/curl/curl/pull/7454
Closes https://github.com/curl/curl/pull/7455
Closes https://github.com/curl/curl/pull/7456
Closes https://github.com/curl/curl/pull/7459
Closes https://github.com/curl/curl/pull/7460
Closes https://github.com/curl/curl/pull/7461
Closes https://github.com/curl/curl/pull/7462
Closes https://github.com/curl/curl/pull/7463
2021-07-20 11:23:36 -04:00
Daniel Stenberg
5ea3145850
vtls: fix connection reuse checks for issuer cert and case sensitivity
CVE-2021-22924

Reported-by: Harry Sintonen
Bug: https://curl.se/docs/CVE-2021-22924.html
2021-07-20 09:36:06 +02:00
Daniel Stenberg
fd9b40bf8d
sectransp: check for client certs by name first, then file
CVE-2021-22926

Bug: https://curl.se/docs/CVE-2021-22926.html

Assisted-by: Daniel Gustafsson
Reported-by: Harry Sintonen
2021-07-20 09:36:06 +02:00
Daniel Stenberg
894f6ec730
telnet: fix option parser to not send uninitialized contents
CVS-2021-22925

Reported-by: Red Hat Product Security
Bug: https://curl.se/docs/CVE-2021-22925.html
2021-07-20 09:36:06 +02:00
Jay Satiro
12284e008b connect: fix wrong format specifier in connect error string
0842175 (not in any release) used the wrong format specifier (long int)
for timediff_t. On an OS such as Windows libcurl's timediff_t (usually
64-bit) is bigger than long int (32-bit). In 32-bit Windows builds the
upper 32-bits of the timediff_t were erroneously then used by the next
format specifier. Usually since the timeout isn't larger than 32-bits
this would result in null as a pointer to the string with the reason for
the connection failing. On other OSes or maybe other compilers it could
probably result in garbage values (ie crash on deref).

Before:
Failed to connect to localhost port 12345 after 1201 ms: (nil)

After:
Failed to connect to localhost port 12345 after 1203 ms: Connection refused

Closes https://github.com/curl/curl/pull/7449
2021-07-20 02:16:53 -04:00
Jay Satiro
6b84f53686 winbuild: support alternate nghttp2 static lib name
- Support both nghttp2.lib and nghttp2_static.lib for static nghttp2.

nghttp2 briefly changed its static lib name to nghttp2_static, but then
made the _static suffix optional.

Ref: https://github.com/nghttp2/nghttp2/pull/1394
Ref: https://github.com/nghttp2/nghttp2/pull/1418
Ref: https://github.com/nghttp2/nghttp2/issues/1466

Reported-by: Pierre Yager

Fixes https://github.com/curl/curl/issues/7446
Closes https://github.com/curl/curl/pull/7447
2021-07-20 02:16:15 -04:00
Josh Soref
95434681bf docs/cmdline: fix grammar and typos
Closes https://github.com/curl/curl/pull/7432
Closes https://github.com/curl/curl/pull/7436
Closes https://github.com/curl/curl/pull/7438
Closes https://github.com/curl/curl/pull/7440
Closes https://github.com/curl/curl/pull/7445
2021-07-20 02:12:32 -04:00
Josh Soref
26ba98807f delegation.d: mention what happens when used multiple times
Closes https://github.com/curl/curl/pull/7408
2021-07-20 02:01:33 -04:00
Josh Soref
4ccb5e84d5 create-file-mode.d: mention what happens when used multiple times
Closes https://github.com/curl/curl/pull/7407
2021-07-20 01:59:52 -04:00
Josh Soref
5a90c77cb6 config.d: split comments and option-per line
Closes https://github.com/curl/curl/pull/7405
2021-07-20 01:57:23 -04:00
Daniel Stenberg
9a7a60dbd1
misc: copyright year range updates 2021-07-19 09:20:58 +02:00
Daniel Stenberg
c0895f8e13
mailmap: add Tobias and Timur 2021-07-19 09:20:58 +02:00
Josh Soref
f538bc5a40 docs: spell out directories instead of dirs in create-dirs
Write out directories rather than using the dirs abbrevation. Also
use plural form consistently, even if the code in the end might just
create a single directory.

Closes #7406
Reviewed-by: Daniel Stenberg <daniel@haxx.se>
Reviewed-by: Daniel Gustafsson <daniel@yesql.se>
2021-07-18 22:21:33 +02:00
Nyholm
8749ce651f docs: correct spelling errors and a broken link
Update grammar and spelling in docs and source code comments.

Closes: #7427
Reviewed-by: Daniel Stenberg <daniel@haxx.se>
2021-07-18 21:14:36 +02:00
Marc Hoersken
2c2b26145f
CI/cirrus: install impacket from PyPI instead of FreeBSD packages
Availability of impacket as FreeBSD package is too flaky.

Stick to legacy version of cryptography which still
supports OpenSSL version 1.0.2 due to FreeBSD 11.

Reviewed-by: Daniel Stenberg

Closes #7418
2021-07-18 19:42:47 +02:00
Josh Soref
85f54a150d
docs/cmdline: mention what happens when used multiple times
For --dns-ipv4-addr, --dns-ipv6-addr and --dns-servers

Closes #7410
Closes #7411
Closes #7412
2021-07-18 18:44:26 +02:00
MAntoniak
9a47d77126
lib: fix compiler warnings with CURL_DISABLE_NETRC
warning C4189: 'netrc_user_changed': local variable is initialized but
not referenced

warning C4189: 'netrc_passwd_changed': local variable is initialized but
not referenced

Closes #7423
2021-07-18 18:37:05 +02:00
Daniel Stenberg
d896184c9b
disable-epsv.d: remove duplicate "(FTP)"
... since the tooling adds that to the output based on the "Protocols:"
tag.
2021-07-18 18:28:40 +02:00
Max Zettlmeißl
eaab3f084a
docs: make the documentation for --etag-save match the program behaviour
When using curl with the option `--etag-save` I expected it to save the
ETag without its surrounding quotes, as stated by the documentation in
the repository and by the generated man pages.

My first endeavour was to fix the program, but while investigating the
history of the relevant parts, I discovered that curl once saved the
ETag without the quotes.  This was undone by Daniel Stenberg in commit
`98c94596f5928840177b6bd3c7b0f0dd03a431af`, therefore I decided that in
this case the documentation should be adjusted to match the behaviour of
curl.

The changed save behaviour also made parts of the `--etag-compare`
documentation wrong or superfluous, so I adjusted those accordingly.

Closes #7429
2021-07-18 18:24:05 +02:00
Josh Soref
069dd3d271
write-out.d: add missing periods
Closes #7404
2021-07-18 00:03:37 +02:00
Josie Huddleston
c12ad2d4e8
easy: during upkeep, attach Curl_easy to connections in the cache
During the protocol-specific parts of connection upkeep, some code
assumes that the data->conn pointer already is set correctly.  However,
there's currently no guarantee of that in the code.

This fix temporarily attaches each connection to the Curl_easy object
before performing the protocol-specific connection check on it, in a
similar manner to the connection checking in extract_if_dead().

Fixes #7386
Closes #7387
Reported-by: Josie Huddleston
2021-07-17 23:43:55 +02:00
Josh Soref
de1004eb0f
cleanup: spell DoH with a lowercase o
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

Closes #7413
2021-07-16 23:53:13 +02:00
Josh Soref
b463c10950
TheArtOfHttpScripting: polish
- add missing backticks and comma

- fix proxy description:

* example proxy isn't local
* locally doesn't really make sense

Closes #7416
2021-07-16 23:51:17 +02:00
Josh Soref
04ce9e853c
form.d: add examples of ,/; for file[name]
Fixes #7415
Closes #7417
2021-07-16 23:48:23 +02:00
MAntoniak
d84fb30681
mbedtls: Remove unnecessary include
- curl_setup.h: all references to mbedtls_md4* functions and structures
  are in the md4.c. This file already includes the <mbedtls/md4.h> file
  along with the file existence control (defined (MBEDTLS_MD4_C))

- curl_ntlm_core.c: unnecessary include - repeated below

Closes #7419
2021-07-16 23:45:50 +02:00
Daniel Stenberg
30f9ce2301
RELEASE-NOTES: synced 2021-07-16 23:27:49 +02:00
User Sg
6a66f72829 multi: fix crash in curl_multi_wait / curl_multi_poll
Appears to have been caused by 51c0ebc (precedes 7.77.0) which added a
VALID_SOCK check to one of the loops through the sockets but not the
other.

Reported-by: sylgal@users.noreply.github.com
Authored-by: sylgal@users.noreply.github.com

Fixes https://github.com/curl/curl/issues/7379
Closes https://github.com/curl/curl/pull/7389
2021-07-16 14:17:47 -04:00
Daniel Gustafsson
b45d6e2c6a tool_help: remove unused define
The PRINT_LINES_PAUSE macro is no longer used, and has been mostly
cleaned out but one occurrence remained.

Closes https://github.com/curl/curl/pull/7380
2021-07-16 14:01:22 -04:00
Sergey Markelov
e919848ead build: fix compiler warnings when CURL_DISABLE_VERBOSE_STRINGS
fix compiler warnings about unused variables and parameters when
built with --disable-verbose.

Closes https://github.com/curl/curl/pull/7377
2021-07-16 13:55:52 -04:00
Andrea Pappacoda
af1ee130f8 build: fix IoctlSocket FIONBIO check
Prior to this change HAVE_IOCTLSOCKET_CAMEL_FIONBIO mistakenly checked
for (lowercase) ioctlsocket when it should have checked for IoctlSocket.

Closes https://github.com/curl/curl/pull/7375
2021-07-16 13:37:05 -04:00
t.artikov
29c7cf79e8 configure: fix nghttp2 library name for static builds
Don't hardcode the nghttp2 library name,
because it can vary, be "nghttp2_static" for example.

Fixes https://github.com/curl/curl/issues/7367
Closes https://github.com/curl/curl/pull/7368
2021-07-16 13:34:39 -04:00
Gisle Vanem
bc035f5c9d [PellesC] fix _lseeki64() macro 2021-07-16 07:32:06 +02:00
Gisle Vanem
c6fd7cbf10 [SChannel] Use '_tcsncmp()' instead
Revert previous change for PellesC. 

Instead replace all use of `_tcsnccmp()` with `_tcsncmp()`.
2021-07-16 07:30:35 +02:00
Gisle Vanem
3cd9a23e80 [PellesC] missing '_tcsnccmp'
PellesC compiler does not have this macro in it's `<tchar.h>`
2021-07-16 07:30:35 +02:00
Daniel Gustafsson
6c293cfcf0 TODO: add mention of mbedTLS 3 incompatibilities
Wyatt OʼDay reported in #7385 that mbedTLS isn't backwards compatible
and curl no longer builds with it. Document the need to fix our support
until so has been done.

Closes #7390
Fixes #7385
Reported-by: Wyatt OʼDay
Reviewed-by: Jay Satiro <raysatiro@yahoo.com>
2021-07-14 23:54:43 +02:00
Daniel Gustafsson
21ef78b556 docs: fix inconsistencies in EGDSOCKET documentation
Only the OpenSSL backend actually use the EGDSOCKET, and also use
TLS consistently rather than mixing SSL and TLS. While there, also
fix a minor spelling nit.

Closes: #7391
Reviewed-by: Jay Satiro <raysatiro@yahoo.com>
2021-07-14 23:47:37 +02:00
Борис Верховский
60dc3d1a5b docs: document missing arguments to commands
This is a followup to commit f410b9e538 fixing a few
more commands which takes arguments.

Closes #7382
Reviewed-by: Daniel Gustafsson <daniel@yesql.se>
2021-07-13 23:49:35 +02:00
Randolf J
0d9de0a09f docs: fix incorrect argument name reference
The documentation for the read callback was erroneously referencing
the nitems argument by nmemb.  The error was introduced in commit
ce0881edee.

Closes #7383
Reviewed-by: Daniel Gustafsson <daniel@yesql.se>
2021-07-13 22:04:05 +02:00
Борис Верховский
f410b9e538 tool_help: Document that --tlspassword takes a password
Closes #7378
Reviewed-by: Daniel Stenberg <daniel@haxx.se>
2021-07-12 23:22:19 +02:00
Daniel Gustafsson
02dfce1837 scripts: Fix typo in release-notes instructions
The command to run had a typo in the pathname which prevented copy
pasting it to work, which has annoyed me enough to fix this now.
2021-07-10 22:36:26 +02:00
Daniel Gustafsson
2053c00dd5 RELEASE-NOTES: synced 2021-07-10 22:34:55 +02:00
Jay Satiro
5d3c409098 write-out.d: Clarify urlnum is not unique for de-globbed URLs
Reported-by: Коваленко Анатолий Викторович

Fixes https://github.com/curl/curl/issues/7342
Closes https://github.com/curl/curl/pull/7369
2021-07-10 01:18:20 -04:00
William Desportes
4e5a91b6aa docs: Fix typos
Closes: #7370
Reviewed-by: Daniel Gustafsson <daniel@yesql.se>
2021-07-03 22:11:26 +02:00
Jonathan Wernberg
9bf79d0a5a
Revert "ftp: Expression 'ftpc->wait_data_conn' is always false"
The reverted commit introduced a logic error in code that was
correct.

The client using libcurl would notice the error since FTP file
uploads in active transfer mode would somtimes complete with
success despite no transfer having been performed and the
"uploaded" file thus not being on the remote server afterwards.

The FTP server would notice the error because it receives a
RST on the data connection it has established with the client
before any data was transferred at all.

The logic error happens if the STOR response from the server have
arrived by the time ftp_multi_statemach() in the affected code path
is called, but the incoming data connection have not arrived yet.
In that case, the processing of the STOR response will cause
'ftpc->wait_data_conn' to be set to TRUE, contradicting the comment
in the code. Since 'complete' will also be set, later logic would
believe the transfer was done.

In most cases, the STOR response will not have arrived yet when
the affected code path is executed, or the incoming connection will
also have arrived, and thus the error would not express itself.
But if the speed difference of the device using libcurl and the
FTP server is exactly right, the error may happen as often as in
one out of hundred file transfers.

This reverts commit 49f3117a23.

Bug: https://curl.se/mail/lib-2021-07/0025.html
Closes #7362
2021-07-08 10:18:25 +02:00
Daniel Stenberg
9053dbbf62
msnprintf: return number of printed characters excluding null byte
... even when the output is "capped" by the maximum length argument.

Clarified in the docs.

Closes #7361
2021-07-08 10:05:39 +02:00
Daniel Stenberg
e7416cfd2b
infof: remove newline from format strings, always append it
- the data needs to be "line-based" anyway since it's also passed to the
  debug callback/application

- it makes infof() work like failf() and consistency is good

- there's an assert that triggers on newlines in the format string

- Also removes a few instances of "..."

- Removes the code that would append "..." to the end of the data *iff*
  it was truncated in infof()

Closes #7357
2021-07-07 22:54:01 +02:00