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

4657 Commits

Author SHA1 Message Date
Kwon-Young Choi
54ecc11cc4
CURLINFO_CONDITION_UNMET: return true for 304 http status code
In libcurl, CURLINFO_CONDITION_UNMET is used to avoid writing to the
output file if the server did not transfered a file based on time
condition. In the same manner, getting a 304 HTTP response back from the
server, for example after passing a custom If-Match-* header, also
fulfill this condition.

Fixes #5181
Closes #5183
2020-04-05 11:13:49 +02:00
Daniel Stenberg
0c511b44ff
KNOWN_BUGS: Store TLS context per transfer instead of per connection
Closes #5102
2020-04-04 00:02:05 +02:00
Daniel Stenberg
a67b7bdda0
RELEASE-PROCEDURE.md: run the copyright.pl script! 2020-03-31 14:50:15 +02:00
Daiki Ueno
0736ee73d3
vquic: add support for GnuTLS backend of ngtcp2
Currently, the TLS backend used by vquic/ngtcp2.c is selected at compile
time. Therefore OpenSSL support needs to be explicitly disabled.

Signed-off-by: Daiki Ueno <dueno@redhat.com>
Closes #5148
2020-03-31 14:39:00 +02:00
Gisle Vanem
e37dc71eae
examples/sessioninfo.c: add include to fix compiler warning
Fixes #5171
2020-03-31 14:32:29 +02:00
Daniel Stenberg
c79e428940
output.d: quote the URL when globbing
Some shells do globbing of their own unless the URL is quoted, so maybe
encourage this.

Co-authored-by: Jay Satiro
Closes #5160
2020-03-30 08:46:08 +02:00
Daniel Stenberg
93fafb93db
curl.h: remnove CURL_VERSION_ESNI. Never supported nor documented
Considered experimental and therefore we can do this.

Closes #5157
2020-03-29 23:28:49 +02:00
Daniel Stenberg
96a617b140
KNOWN_BUGS: DoH doesn't inherit all transfer options
Closes #4578
Closes #4579
2020-03-28 23:09:45 +01:00
Daniel Stenberg
34696ab5a5
KNOWN_BUGS: DoH leaks memory after followlocation
Closes #4592
2020-03-28 23:08:41 +01:00
Daniel Stenberg
6be2804cdc
KNOWN_BUGS: "FTPS needs session reuse"
Closes #4654
2020-03-28 23:04:14 +01:00
Daniel Stenberg
bbe476d58c
KNOWN_BUGS: "stick to same family over SOCKS pro" is presumed fixed 2020-03-28 23:02:03 +01:00
Daniel Stenberg
37b6cc2fe1
TODO: Set custom client ip when using haproxy protocol
Closes #5125
2020-03-28 22:58:50 +01:00
Daniel Stenberg
6de756c9b1
version: add 'cainfo' and 'capath' to version info struct
Suggested-by: Timothe Litt
URL: https://curl.haxx.se/mail/lib-2020-03/0090.html
Reviewed-by: Jay Satiro

Closes #5150
2020-03-27 09:04:27 +01:00
Jay Satiro
0d0537aeae SSLCERTS.md: Fix example code for setting CA cert file
Prior to this change the documentation erroneously said use
CURLOPT_CAPATH to set a CA cert file.

Bug: https://curl.haxx.se/mail/lib-2020-03/0121.html
Reported-by: Timothe Litt

Closes https://github.com/curl/curl/pull/5151
2020-03-26 18:46:15 -04:00
Daniel Stenberg
361d4f3fdc
docs/make: generate curl.1 from listed files only
Previously it rendered the page from files matching "*.d" in the correct
directory, which worked fine in git builds when the files were added but
made it easy to forget adding the files to the dist.

Now, only man page sections listed in DPAGES in Makefile.inc will be
used, thus "forcing" us to update this to get the man page right and get
it included in the dist at the same time.

Ref: #5146
Closes #5149
2020-03-26 13:25:59 +01:00
Daniel Stenberg
35318218b8
dist: add mail-rcpt-allowfails.d to the tarball
Reported-by: Maksim Stsepanenka
Reviewed-by: Jat Satiro

Closes #5146
2020-03-25 23:20:04 +01:00
Daniel Stenberg
9a8b3b3e13
copyright: fix out-of-date copyright ranges and missing headers
Reported by the new script 'scripts/copyright.pl'. The script has a
regex whitelist for the files that don't need copyright headers.

Removed three (mostly usesless) README files from docs/

Closes #5141
2020-03-24 15:05:59 +01:00
Clément Notin
12144fdda8
nghttp2: 1.12.0 required
since nghttp2_session_set_local_window_size is needed

Closes #5140
2020-03-23 22:22:22 +01:00
Daniel Stenberg
4b355dd13b
TODO: Use "random" ports for the test servers 2020-03-22 23:30:09 +01:00
Johannes Schindelin
5450428491 schannel: add "best effort" revocation check option
- Implement new option CURLSSLOPT_REVOKE_BEST_EFFORT and
  --ssl-revoke-best-effort to allow a "best effort" revocation check.

A best effort revocation check ignores errors that the revocation check
was unable to take place. The reasoning is described in detail below and
discussed further in the PR.

---

When running e.g. with Fiddler, the schannel backend fails with an
unhelpful error message:

	Unknown error (0x80092012) - The revocation function was unable
	to check revocation for the certificate.

Sadly, many enterprise users who are stuck behind MITM proxies suffer
the very same problem.

This has been discussed in plenty of issues:
https://github.com/curl/curl/issues/3727,
https://github.com/curl/curl/issues/264, for example.

In the latter, a Microsoft Edge developer even made the case that the
common behavior is to ignore issues when a certificate has no recorded
distribution point for revocation lists, or when the server is offline.
This is also known as "best effort" strategy and addresses the Fiddler
issue.

Unfortunately, this strategy was not chosen as the default for schannel
(and is therefore a backend-specific behavior: OpenSSL seems to happily
ignore the offline servers and missing distribution points).

To maintain backward-compatibility, we therefore add a new flag
(`CURLSSLOPT_REVOKE_BEST_EFFORT`) and a new option
(`--ssl-revoke-best-effort`) to select the new behavior.

Due to the many related issues Git for Windows and GitHub Desktop, the
plan is to make this behavior the default in these software packages.

The test 2070 was added to verify this behavior, adapted from 310.

Based-on-work-by: georgeok <giorgos.n.oikonomou@gmail.com>
Co-authored-by: Markus Olsson <j.markus.olsson@gmail.com>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>

Closes https://github.com/curl/curl/pull/4981
2020-03-18 03:23:39 -04:00
Jay Satiro
a268ad5d7e multi: Improve parameter check for curl_multi_remove_handle
- If an easy handle is owned by a multi different from the one specified
  then return CURLM_BAD_EASY_HANDLE.

Prior to this change I assume user error could cause corruption.

Closes https://github.com/curl/curl/pull/5116
2020-03-18 02:58:42 -04:00
Mathias Gumz
04c03416e6
writeout: support to generate JSON output
This commit adds support to generate JSON via the writeout feature:

    -w "%{json}"

It leverages the existing infrastructure as much as possible. Thus,
generating the JSON on STDERR is possible by:

    -w "%{stderr}%{json}"

This implements a variant of
https://github.com/curl/curl/wiki/JSON#--write-out-json.

Closes #4870
2020-03-17 15:01:28 +01:00
Daniel Stenberg
51fde33747
TODO: TLS-PSK with OpenSSL
Closes #5081
2020-03-15 11:34:14 +01:00
Jay Satiro
67f3f6cff1 Makefile.m32: Improve windres parameter compatibility
- s/COFF/coff/

Some versions of windres do not recognize uppercase COFF as a valid
way to specify the COFF output format.

Reported-by: Steven Penny

Fixes https://github.com/curl/curl/issues/5099
Closes https://github.com/curl/curl/pull/5101
2020-03-14 19:08:17 -04:00
Daniel Stenberg
0845ecbb6d
docs: add warnings about FILE: URLs on Windows
- --url man page section
 - libcurl-security.3 gets the full text
 - CURLOPT_URL.3

Reported-by: Tim Sedlmeyer
2020-03-13 16:56:41 +01:00
Daniel Stenberg
2d47224e1c
THANKS: from the 7.69.1 release 2020-03-11 00:36:17 +01:00
Jay Satiro
485d4470d3 curl_share_setopt.3: Note sharing cookies doesn't enable the engine
Follow-up to d0a7ee3 which fixed a bug in 7.66.0 that caused
CURL_LOCK_DATA_COOKIE to enable the easy handle's cookie engine.

Bug: https://curl.haxx.se/mail/lib-2020-03/0019.html
Reported-by: Felipe Gasper

Closes https://github.com/curl/curl/pull/5048
2020-03-06 02:57:17 -05:00
Daniel Stenberg
a52a1a05fb
MANUAL: update a dict-using command line
The 'web1913' database is now invalid, use 'gcide' instead.
2020-03-05 14:30:13 +01:00
Daniel Stenberg
beea6f8bed
KNOWN_BUGS: configure --with-gssapi with Heimdal is ignored on macOS
Closes #3841
2020-03-05 14:27:14 +01:00
Daniel Stenberg
52d302ed64
polarssl: remove more references and mentions
Assisted-by: Jay Satiro
Follow-up to 6357a19ff2
Closes #5036
2020-03-05 07:57:45 +01:00
Daniel Stenberg
b44f18f1f1
THANKS: from 7.69.0
Now sorted case insensitive
2020-03-04 07:31:59 +01:00
Jay Satiro
256a29361f curl_escape.3: Add a link to curl_free
Ref: https://github.com/curl/curl/pull/5016#issuecomment-593628582
2020-03-02 18:16:24 -05:00
Jay Satiro
1722eb83b4 curl_getenv.3: Fix the memory handling description
- Tell the user to call curl_free() to free the pointer returned by
  curl_getenv().

Prior to this change the user was directed to call free(), but that
would not work in cases where the library and application use separate C
runtimes and therefore have separate heap memory management.

Closes https://github.com/curl/curl/pull/5016
2020-03-02 18:16:23 -05:00
Daniel Stenberg
ff3b1f4860
altsvc: both h3 backends now speak h3-27
... also updated the HTTP3 build description for ngtcp2 accordingly.
2020-03-02 00:07:37 +01:00
Jonathan Cardoso Machado
5b46790f11
docs: fix typo on CURLINFO_RETRY_AFTER - alwaus -> always
Reviewed-by: Steve Holme
Closes #5005
2020-02-29 21:14:26 +00:00
Daniel Stenberg
0e06c1637b
TODO: curl --proxycommand
Suggested-by: Kristian Mide
Closes #4941
2020-02-29 00:11:03 +01:00
Daniel Stenberg
5808a0d0f5
http2: now require nghttp2 >= 1.12.0
To simplify our code and since earlier versions lack important function
calls libcurl needs to function correctly.

nghttp2 1.12.0 was relased on June 26, 2016.

Closes #4961
2020-02-21 16:54:47 +01:00
Daniel Stenberg
67d26a361a
HTTP-COOKIES: mention that a trailing newline is required
... so that we know we got the whole and not a partial line.

Also, changed the formatting of the fields away from a table again since
the table format requires a github-markdown tool version that we don't
run on the web server atm.

Reported-by: Sunny Bean
Fixes #4946
Closes #4947
2020-02-19 08:04:35 +01:00
Daniel Stenberg
d79ee4ae32
CURLOPT_REDIR_PROTOCOLS.3: update the DEFAULT section
to be in sync with the description above

Reported-by: Joonas Kuorilehto
Fixes #4943
Closes #4945
2020-02-18 09:19:39 +01:00
Daniel Stenberg
0ae578ac92
docs/GOVERNANCE: refreshed + added "donations" and "commercial support" 2020-02-18 09:18:28 +01:00
Daniel Stenberg
4a4b63daaa
socks: make the connect phase non-blocking
Removes two entries from KNOWN_BUGS.

Closes #4907
2020-02-17 00:08:48 +01:00
Jay Satiro
03564deba2 CURLINFO_COOKIELIST.3: Fix example
Prior to this change the example would try to import cookies from stdin,
which wasn't what was intended.

Reported-by: 3dyd@users.noreply.github.com

Fixes https://github.com/curl/curl/issues/4930
2020-02-15 18:17:31 -05:00
Daniel Stenberg
b26c92fbf0
TODO: Paged searches on LDAP server
Closes #4452
2020-02-14 23:05:38 +01:00
Daniel Stenberg
95d628e13e
TODO: CURLOPT_SSL_CTX_FUNCTION for LDAPS
Closes #4108
2020-02-14 23:03:21 +01:00
Daniel Stenberg
d78672b5b4
create-dirs.d: mention the mode
Reported-by: Dan Jacobson
Fixes #4766
Closes #4916
2020-02-12 22:30:45 +01:00
Daniel Stenberg
8957e6e4ed
CURLOPT_ALTSVC_CTRL.3: fix the DEFAULT wording
Assisted-by: Jay Satiro
Reported-by: Craig Andrews
Fixes #4909
Closes #4910
2020-02-11 22:37:02 +01:00
Daniel Stenberg
02f8de6516
altsvc: keep a copy of the file name to survive handle reset
The alt-svc cache survives a call to curl_easy_reset fine, but the file
name to use for saving the cache was cleared. Now the alt-svc cache has
a copy of the file name to survive handle resets.

Added test 1908 to verify.

Reported-by: Craig Andrews
Fixes #4898
Closes #4902
2020-02-09 22:41:49 +01:00
Daniel Stenberg
faaa63f323
docs/HTTP3: add --enable-alt-svc to curl's configure 2020-02-05 00:25:12 +01:00
Daniel Stenberg
1fa83b2680
RELEASE-PROCEDURE: feature win is closed post-release a few days
We've tried to uphold this already but let's make it official by
publicly stating this is the way we do it.

Closes #4877
2020-02-04 22:29:56 +01:00
Daniel Stenberg
9c27386ef0
docs/HTTP3: update the OpenSSL branch to use for ngtcp2
Reported-by: James Fuller
2020-02-04 15:05:57 +01:00