Граф коммитов

28062 Коммитов

Автор SHA1 Сообщение Дата
Daniel Stenberg 51a2e3ff1b
CURLOPT_RESOLVE.3: minor polish
Minor rephrasing for some explanations.

Put the format strings in stand-alone lines with .nf/.fi to be easier to spot.

Move "added in" to AVAILABILITY

Closed #8110
2021-12-07 17:13:55 +01:00
Daniel Stenberg 45c6448e68
test1556: adjust for hyper
Closes #8105
2021-12-07 17:11:51 +01:00
Daniel Stenberg 1bea122114
test1554: adjust for hyper
Closes #8104
2021-12-07 17:09:14 +01:00
Daniel Stenberg 8f2fb3cdbd
retry-all-errors.d: make the example complete
... as it needs --retry too to work
2021-12-07 10:10:51 +01:00
Daniel Stenberg 05f899c842
TODO: 5.7 Require HTTP version X or higher
Closes #7980
2021-12-06 17:03:00 +01:00
Daniel Stenberg 1a4c14cbac
CURLOPT_STDERR.3: does not work with libcurl as a win32 DLL
This is the exact same limitation already documented for
CURLOPT_WRITEDATA but should be clarified here. It also has a different
work-around.

Reported-by: Stephane Pellegrino
Bug: https://github.com/curl/curl/issues/8102
Closes #8103
2021-12-06 16:43:28 +01:00
Daniel Stenberg 2b3dd01b77
multi: handle errors returned from socket/timer callbacks
The callbacks were partially documented to support this. Now the
behavior is documented and returning error from either of these
callbacks will effectively kill all currently ongoing transfers.

Added test 530 to verify

Reported-by: Marcelo Juchem
Fixes #8083
Closes #8089
2021-12-06 14:55:52 +01:00
Daniel Stenberg b3f9c1aa09
http2:set_transfer_url() return early on OOM
If curl_url() returns NULL this should return early to avoid mistakes -
even if right now the subsequent function invokes are all OK.

Coverity (wrongly) pointed out this as a NULL deref.

Closes #8100
2021-12-06 14:32:29 +01:00
Daniel Stenberg bc064a8177
tool_parsecfg: use correct free() call to free memory
Detected by Coverity. CID 1494642.
Follow-up from 2be1aa619b

Closes #8099
2021-12-06 11:00:30 +01:00
Daniel Stenberg 75b31ce626
tool_operate: fix potential memory-leak
A 'CURLU *' would leak if url_proto() is called with no URL.

Detected by Coverity. CID 1494643.
Follow-up to 18270893ab
Closes #8098
2021-12-06 09:59:38 +01:00
Patrick Monnerat a40160aee8
openldap: implement STARTTLS
As this introduces use of CURLOPT_USE_SSL option for LDAP, also check
this option in ldap.c as it is not supported by this backend.

Closes #8065
2021-12-06 07:53:04 +01:00
Jun Tseng a6e2643433
curl_easy_unescape.3: call curl_easy_cleanup in example
Closes #8097
2021-12-06 07:50:37 +01:00
Jun Tseng a42f60d94f
curl_easy_escape.3: call curl_easy_cleanup in example
Closes #8097
2021-12-06 07:50:29 +01:00
Daniel Stenberg a82fe5d2d0
tool_listhelp: sync
Follow-up to 172068b76f
2021-12-05 23:14:11 +01:00
Damien Walsh 172068b76f
request.d: refer to 'method' rather than 'command'
Closes #8094
2021-12-05 23:05:11 +01:00
Daniel Stenberg de3911e9ce
RELEASE-NOTES: synced 2021-12-03 23:04:04 +01:00
Daniel Stenberg cdde5414fc
writeout: fix %{http_version} for HTTP/3
Output "3" properly when HTTP/3 was used.

Reported-by: Bernat Mut
Fixes #8072
Closes #8092
2021-12-03 23:00:37 +01:00
Daniel Stenberg 92d1aee8b1
urlapi: accept port number zero
This is a regression since 7.62.0 (fb30ac5a2d).

Updated test 1560 accordingly

Reported-by: Brad Fitzpatrick
Fixes #8090
Closes #8091
2021-12-03 22:58:41 +01:00
Mark Dodgson f67b4d37b7
lift: ignore is a deprecated config option, use ignoreRules
Closes #8082
2021-12-03 22:55:51 +01:00
Alessandro Ghedini 3199eb25dc
HTTP3: update quiche build instructions
The repo repo was re-organized a bit, so the build instructions need to
be updated.

Closes #8076
2021-12-03 16:38:54 +01:00
Daniel Stenberg c8a3046555
CURLMOPT_TIMERFUNCTION.3: call it expire time, not interval
Since we say it is a non-repating timer
2021-12-02 12:05:48 +01:00
Florian Van Heghe 456c53730d
mbedTLS: include NULL byte in blob data length for CURLOPT_CAINFO_BLOB
Fixes #8079
Closes #8081
2021-12-02 11:15:05 +01:00
Wyatt O'Day 7da636cad5 version_win32: Check build number and platform id
Prior to this change the build number was not checked during version
comparison, and the platform id was supposed to be checked but wasn't.

Checking the build number is required for enabling "evergreen"
Windows 10/11 features (like TLS 1.3).

Ref: https://github.com/curl/curl/pull/7784

Closes https://github.com/curl/curl/pull/7824
Closes https://github.com/curl/curl/pull/7867
2021-12-02 03:39:14 -05:00
Jay Satiro 3467e89bb9 libssh2: fix error message for sha256 mismatch
- On mismatch error show sha256 fingerprint in base64 format.

Prior to this change the fingerprint was mistakenly printed in binary.
2021-12-02 02:19:51 -05:00
x2018 34294a65b2
openssl: check the return value of BIO_new()
Closes #8078
2021-12-01 11:51:53 +01:00
Dan Fandrich 470d546048 docs: Update the Reducing Size section
Add many more options that can reduce the size of the binary that were
added since the last update. Update the sample minimal binary size for
version 7.80.0.
2021-11-30 18:33:49 -08:00
Dan Fandrich 48cbd8f713 tests: Add some missing keywords to tests
These are needed to skip some tests when configure options have disabled
certain features.
2021-11-30 18:32:53 -08:00
Florian Van Heghe 8443f975c0
mbedTLS: add support for CURLOPT_CAINFO_BLOB
Closes #8071
2021-11-30 16:19:46 +01:00
Glenn Strauss aae235b6ba
digest: compute user:realm:pass digest w/o userhash
https://datatracker.ietf.org/doc/html/rfc7616#section-3.4.4
  ... the client MUST calculate a hash of the username after
      any other hash calculation ...

Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
Closes #8066
2021-11-30 13:57:46 +01:00
Daniel Stenberg 6ad053060d
config.d: update documentation to match the path search
Assisted-by: Jay Satiro
2021-11-29 00:57:39 +01:00
Daniel Stenberg 2be1aa619b
tool_findfile: search for a file in the homedir
The homedir() function is now renamed into findfile() and iterates over
all the environment variables trying to access the file in question
until it finds it. Last resort is then getpwuid() if
available. Previously it would first try to find a home directory and if
that was set, insist on checking only that directory for the file. This
now returns the full file name it finds.

The Windows specific checks are now done differently too and in this
order:

1 - %USERPROFILE%
2 - %APPDATA%
3 - %USERPROFILE%\\Application Data

The windows order is modified to match how the Windows 10 ssh tool works
when it searches for .ssh/known_hosts.

Reported-by: jeffrson on github
Co-authored-by: Jay Satiro
Fixes #8033
Closes #8035
2021-11-29 00:57:22 +01:00
Daniel Stenberg 230bb3e278
docs: consistent manpage SYNOPSIS
Make all libcurl related options use .nf (no fill) for the SYNOPSIS
section - for consistent look. roffit then renders that section using
<pre> (monospace font) in html for the website.

Extended manpage-syntax (test 1173) with a basic check for it.

Closes #8062
2021-11-26 16:51:23 +01:00
Daniel Stenberg ff1c172e86
RELEASE-NOTES: synced 2021-11-26 14:37:49 +01:00
Patrick Monnerat ac89965f99
openldap: handle connect phase with a state machine
Closes #8054
2021-11-26 14:32:12 +01:00
Daniel Stenberg 76d6e719d9
docs: address proselint nits
- avoid exclamation marks
- use consistent number of spaces after periods: one
- avoid clichés
- avoid using 'very'

Closes #8060
2021-11-26 14:27:07 +01:00
Bruno Baguette 0d380a853f
FAQ: typo fix : "yout" ➤ "your"
Closes #8059
2021-11-26 14:24:59 +01:00
Bruno Baguette 2361d11d4c
docs/INSTALL.md: typo fix : added missing "get" verb
Closes #8058
2021-11-26 08:13:10 +01:00
Daniel Stenberg c50edee022
insecure.d: detail its use for SFTP and SCP as well
Closes #8056
2021-11-25 22:31:15 +01:00
Viktor Szakats 8c0336cf5d
Makefile.m32: rename -winssl option to -schannel and tidy up
- accept `-schannel` as an alternative to `CFG` option `-winssl`
  (latter still accepted, but deprecated)
- rename internal variable `WINSSL` to `SCHANNEL`
- make the `CFG` option evaluation shorter, without repeating the option
  name

Reviewed-by: Marcel Raad
Reviewed-by: Daniel Stenberg
Closes #8053
2021-11-25 17:36:38 +00:00
Daniel Stenberg ba83800638
KNOWN_BUGS: 5.6 make distclean loops forever
Reported-by: David Bohman
Closes #7716
2021-11-25 14:44:59 +01:00
Daniel Stenberg a6d2ca37bb
KNOWN_BUGS: add one, remove one
- 5.10 SMB tests fail with Python 2

Just use python 3.

+ 5.10 curl hangs on SMB upload over stdin

Closes #7896
2021-11-25 14:08:52 +01:00
Daniel Stenberg 4183b8fe9a
urlapi: provide more detailed return codes
Previously, the return code CURLUE_MALFORMED_INPUT was used for almost
30 different URL format violations. This made it hard for users to
understand why a particular URL was not acceptable. Since the API cannot
point out a specific position within the URL for the problem, this now
instead introduces a number of additional and more fine-grained error
codes to allow the API to return more exactly in what "part" or section
of the URL a problem was detected.

Also bug-fixes curl_url_get() with CURLUPART_ZONEID, which previously
returned CURLUE_OK even if no zoneid existed.

Test cases in 1560 have been adjusted and extended. Tests 1538 and 1559
have been updated.

Updated libcurl-errors.3 and curl_url_strerror() accordingly.

Closes #8049
2021-11-25 08:36:04 +01:00
Daniel Stenberg a5f5687368
urlapi: make Curl_is_absolute_url always use MAX_SCHEME_LEN
Instad of having all callers pass in the maximum length, always use
it. The passed in length is instead used only as the length of the
target buffer for to storing the scheme name in, if used.

Added the scheme max length restriction to the curl_url_set.3 man page.

Follow-up to 45bcb2eaa7

Closes #8047
2021-11-25 08:33:48 +01:00
Jay Satiro 0969805e20
cmake: warn on use of the now deprecated symbols
Follow-up to 9108da2c26

Closes #8052
2021-11-25 08:29:30 +01:00
Kevin Burke cc2870e275
tests/CI.md: add more information on CI environments
Fixes #8012
Closes #8022
2021-11-23 09:38:44 +01:00
Daniel Stenberg 9108da2c26
cmake: private identifiers use CURL_ instead of CMAKE_ prefix
Since the 'CMAKE_' prefix is reserved for cmake's own private use.
Ref: https://cmake.org/cmake/help/latest/manual/cmake-variables.7.html

Reported-by: Boris Rasin
Fixes #7988
Closes #8044
2021-11-23 08:46:41 +01:00
Daniel Stenberg 3e6eb18fce
urlapi: reject short file URLs
file URLs that are 6 bytes or shorter are not complete. Return
CURLUE_MALFORMED_INPUT for those. Extended test 1560 to verify.

Triggered by #8041
Closes #8042
2021-11-23 08:45:21 +01:00
Daniel Stenberg ffb6a9e8a6
curl: improve error message for --head with -J
... it now focuses on the "output of headers" combined with the
--remote-header-name option, as that is actually the problem. Both
--head and --include can output headers.

Reported-by: nimaje on github
Fixes #7987
Closes #8045
2021-11-23 08:43:44 +01:00
Daniel Stenberg b011656804
RELEASE-NOTES: synced 2021-11-22 23:11:40 +01:00
Stefan Eissing 45bcb2eaa7
urlapi: cleanup scheme parsing
Makea Curl_is_absolute_url() always leave a defined 'buf' and avoids
copying on urls that do not start with a scheme.

Closes #8043
2021-11-22 22:41:11 +01:00