]> granicus.if.org Git - curl/log
curl
8 years agoopenssl: simplify expression in Curl_ossl_version
Michael Kaufmann [Sun, 18 Dec 2016 12:09:51 +0000 (13:09 +0100)]
openssl: simplify expression in Curl_ossl_version

8 years agocurl_easy_recv: Improve documentation and example program
Michael Kaufmann [Sun, 18 Dec 2016 11:51:48 +0000 (12:51 +0100)]
curl_easy_recv: Improve documentation and example program

Follow-up to 82245ea: Fix the example program sendrecv.c (handle
CURLE_AGAIN, handle incomplete send). Improve the documentation
for curl_easy_recv() and curl_easy_send().

Reviewed-by: Frank Meier
Assisted-by: Jay Satiro
See https://github.com/curl/curl/pull/1134

8 years agoCurl_getconnectinfo: avoid checking if the connection is closed
Isaac Boukris [Tue, 6 Dec 2016 22:39:08 +0000 (00:39 +0200)]
Curl_getconnectinfo: avoid checking if the connection is closed

It doesn't benefit us much as the connection could get closed at
any time, and also by checking we lose the ability to determine
if the socket was closed by reading zero bytes.

Reported-by: Michael Kaufmann
Closes https://github.com/curl/curl/pull/1134

8 years agoCIPHERS.md: attempt to document TLS cipher names
Daniel Stenberg [Sun, 18 Dec 2016 00:08:55 +0000 (01:08 +0100)]
CIPHERS.md: attempt to document TLS cipher names

As the official docs seems really hard to keep track of and link to over
time

8 years agocurl.1: generated after 6cce4dbf830
Daniel Stenberg [Sat, 17 Dec 2016 23:48:15 +0000 (00:48 +0100)]
curl.1: generated after 6cce4dbf830

8 years agocmdline-opts/post30X.d: fix the RFC references
Daniel Stenberg [Sat, 17 Dec 2016 23:42:36 +0000 (00:42 +0100)]
cmdline-opts/post30X.d: fix the RFC references

8 years agocurl.1: regenerated
Daniel Stenberg [Sat, 17 Dec 2016 22:57:34 +0000 (23:57 +0100)]
curl.1: regenerated

Fixed trailing whitespace and numerous formatting glitches

8 years agocmdline-opts: formatting fixes
Daniel Stenberg [Sat, 17 Dec 2016 22:56:50 +0000 (23:56 +0100)]
cmdline-opts: formatting fixes

8 years agocurl_easy_setopt.3: removed CURLOPT_SOCKS_PROXYTYPE
Daniel Stenberg [Sat, 17 Dec 2016 22:50:14 +0000 (23:50 +0100)]
curl_easy_setopt.3: removed CURLOPT_SOCKS_PROXYTYPE

8 years agotool_getparam.c: make comments use the up-to-date option names
Daniel Stenberg [Sat, 17 Dec 2016 22:49:11 +0000 (23:49 +0100)]
tool_getparam.c: make comments use the up-to-date option names

8 years agomanpage-scan.pl: allow deprecated options to get removed from curl.1
Daniel Stenberg [Sat, 17 Dec 2016 22:48:13 +0000 (23:48 +0100)]
manpage-scan.pl: allow deprecated options to get removed from curl.1

--krb4, --ftp-ssl and --ftp-ssl-reqd no longer need to be documented in the
man page

8 years agocmdline-opts/gen.pl: trim off trailing spaces
Daniel Stenberg [Sat, 17 Dec 2016 17:14:01 +0000 (18:14 +0100)]
cmdline-opts/gen.pl: trim off trailing spaces

8 years agocmdline-opts/proxy-tlsuser.d: remove trailing .d
Daniel Stenberg [Sat, 17 Dec 2016 17:13:47 +0000 (18:13 +0100)]
cmdline-opts/proxy-tlsuser.d: remove trailing .d

8 years agocurl_easy_setopt.3: CURLOPT_PRE_PROXY instead of CURLOPT_SOCKS_PROXY
Daniel Stenberg [Sat, 17 Dec 2016 17:09:28 +0000 (18:09 +0100)]
curl_easy_setopt.3: CURLOPT_PRE_PROXY instead of CURLOPT_SOCKS_PROXY

8 years agosymbols: removed two, added one
Daniel Stenberg [Sat, 17 Dec 2016 17:00:49 +0000 (18:00 +0100)]
symbols: removed two, added one

8 years agocmdline-opts: include the man page split up files in the dist
Daniel Stenberg [Fri, 16 Dec 2016 23:23:04 +0000 (00:23 +0100)]
cmdline-opts: include the man page split up files in the dist

8 years agocurl.1: generated with gen.pl
Daniel Stenberg [Fri, 16 Dec 2016 21:02:47 +0000 (22:02 +0100)]
curl.1: generated with gen.pl

This is the first time we replace the manually edited curt.1 with the
generated one created by gen.pl and the individual option documentation
pages.

Do not edit this file, edit the individual pages and regenerate this
output.

This file will be generated by the build system soon and then removed
from git.

8 years agocmdline-opts: added some missing info
Daniel Stenberg [Fri, 16 Dec 2016 21:01:01 +0000 (22:01 +0100)]
cmdline-opts: added some missing info

8 years agoCURLINFO_SSL_VERIFYRESULT.3: language
Daniel Stenberg [Fri, 16 Dec 2016 15:59:08 +0000 (16:59 +0100)]
CURLINFO_SSL_VERIFYRESULT.3: language

8 years agoHTTPS-PROXY docs: update/polish
Daniel Stenberg [Fri, 16 Dec 2016 15:57:39 +0000 (16:57 +0100)]
HTTPS-PROXY docs: update/polish

8 years agocmdline-opts/page-header: mention it is generated
Daniel Stenberg [Fri, 16 Dec 2016 15:07:59 +0000 (16:07 +0100)]
cmdline-opts/page-header: mention it is generated

... to avoid people from trying to edit the pending curl.1 version that
gets generated by gen.pl

8 years agopreproxy: renamed what was added as SOCKS_PROXY
Daniel Stenberg [Fri, 16 Dec 2016 15:02:08 +0000 (16:02 +0100)]
preproxy: renamed what was added as SOCKS_PROXY

CURLOPT_SOCKS_PROXY -> CURLOPT_PRE_PROXY

Added the corresponding --preroxy command line option. Sets a SOCKS
proxy to connect to _before_ connecting to a HTTP(S) proxy.

8 years agocurl: normal socks proxies still use CURLOPT_PROXY
Daniel Stenberg [Fri, 16 Dec 2016 14:34:14 +0000 (15:34 +0100)]
curl: normal socks proxies still use CURLOPT_PROXY

... the newly introduced CURLOPT_SOCKS_PROXY is special and should be
asked for specially. (Needs new code.)

Unified proxy type to a single variable in the config struct.

8 years agoCURLOPT_SOCKS_PROXYTYPE: removed
Daniel Stenberg [Fri, 16 Dec 2016 14:10:19 +0000 (15:10 +0100)]
CURLOPT_SOCKS_PROXYTYPE: removed

This was added as part of the SOCKS+HTTPS proxy merge but there's no
need to support this as we prefer to have the protocol specified as a
prefix instead.

8 years agocurl_multi_socket.3: fix typo
Daniel Stenberg [Thu, 15 Dec 2016 16:26:23 +0000 (17:26 +0100)]
curl_multi_socket.3: fix typo

8 years agochecksrc: warn for assignments within if() expressions
Daniel Stenberg [Wed, 14 Dec 2016 00:29:44 +0000 (01:29 +0100)]
checksrc: warn for assignments within if() expressions

... they're already frowned upon in our source code style guide, this
now enforces the rule harder.

8 years agochecksrc: stricter no-space-before-paren enforcement
Daniel Stenberg [Tue, 13 Dec 2016 22:34:59 +0000 (23:34 +0100)]
checksrc: stricter no-space-before-paren enforcement

In order to make the code style more uniform everywhere

8 years agoISSUE_TEMPLATE: try mentioning known bugs/todo in new issue template
Daniel Stenberg [Sun, 11 Dec 2016 18:37:44 +0000 (19:37 +0100)]
ISSUE_TEMPLATE: try mentioning known bugs/todo in new issue template

8 years agoRELEASE-NOTES: synced with 71a55534fa6
Daniel Stenberg [Thu, 8 Dec 2016 20:08:35 +0000 (21:08 +0100)]
RELEASE-NOTES: synced with 71a55534fa6

8 years agoopenssl: don't use OpenSSL's ERR_PACK.
Adam Langley [Wed, 7 Dec 2016 20:18:21 +0000 (12:18 -0800)]
openssl: don't use OpenSSL's ERR_PACK.

ERR_PACK is an internal detail of OpenSSL. Also, when using it, a
function name must be specified which is overly specific: the test will
break whenever OpenSSL internally change things so that a different
function creates the error.

Closes #1157

8 years agotest2032: Mark test as flaky
Dan Fandrich [Mon, 5 Dec 2016 20:38:15 +0000 (21:38 +0100)]
test2032: Mark test as flaky

8 years agolibcurl-multi.3: typo
Jeremy Pearson [Sat, 3 Dec 2016 11:07:54 +0000 (21:07 +1000)]
libcurl-multi.3: typo

Closes https://github.com/curl/curl/pull/1153

8 years agotest1281: added http as a required feature
Dan Fandrich [Fri, 2 Dec 2016 14:17:47 +0000 (15:17 +0100)]
test1281: added http as a required feature

8 years agocurl: support zero-length argument strings in config files
Daniel Stenberg [Fri, 2 Dec 2016 10:25:35 +0000 (11:25 +0100)]
curl: support zero-length argument strings in config files

... like 'user-agent = ""'

Adjusted test 71 to verify.

8 years agohttp_proxy: simplify CONNECT response reading
Daniel Stenberg [Tue, 29 Nov 2016 23:31:23 +0000 (00:31 +0100)]
http_proxy: simplify CONNECT response reading

Since it now reads responses one byte a time, a loop could be removed
and it is no longer limited to get the whole response within 16K, it is
now instead only limited to 16K maximum header line lengths.

8 years agotests: fix CONNECT test cases to be more strict
Daniel Stenberg [Tue, 29 Nov 2016 23:10:18 +0000 (00:10 +0100)]
tests: fix CONNECT test cases to be more strict

... as they broke with the cleaned up CONNECT handling

8 years agoCONNECT: read responses one byte at a time
Daniel Stenberg [Tue, 29 Nov 2016 23:09:13 +0000 (00:09 +0100)]
CONNECT: read responses one byte at a time

... so that it doesn't read data that is actually coming from the
remote. 2xx responses have no body from the proxy, that data is from the
peer.

Fixes #1132

8 years agoCONNECT: reject TE or CL in 2xx responses
Daniel Stenberg [Tue, 29 Nov 2016 15:22:35 +0000 (16:22 +0100)]
CONNECT: reject TE or CL in 2xx responses

A server MUST NOT send any Transfer-Encoding or Content-Length header
fields in a 2xx (Successful) response to CONNECT. (RFC 7231 section
4.3.6)

Also fixes the three test cases that did this.

8 years agoURL parser: reject non-numerical port numbers
Daniel Stenberg [Thu, 1 Dec 2016 09:32:13 +0000 (10:32 +0100)]
URL parser: reject non-numerical port numbers

Test 1281 added to verify

8 years agoruntests: made Servers: output be more consistent by removing OFF
Dan Fandrich [Wed, 30 Nov 2016 21:38:45 +0000 (22:38 +0100)]
runtests: made Servers: output be more consistent by removing OFF

8 years agocyassl: fixed typo introduced in 4f8b1774
Dan Fandrich [Wed, 30 Nov 2016 20:57:55 +0000 (21:57 +0100)]
cyassl: fixed typo introduced in 4f8b1774

8 years agoCURLOPT_CONNECT_TO: Skip non-matching "connect-to" entries properly
Michael Kaufmann [Wed, 30 Nov 2016 10:51:29 +0000 (11:51 +0100)]
CURLOPT_CONNECT_TO: Skip non-matching "connect-to" entries properly

If a port number in a "connect-to" entry does not match, skip this
entry instead of connecting to port 0.

If a port number in a "connect-to" entry matches, use this entry
and look no further.

Reported-by: Jay Satiro
Assisted-by: Jay Satiro, Daniel Stenberg
Closes #1148

8 years agoBUGS: describe bug handling process
Daniel Stenberg [Thu, 17 Nov 2016 22:46:36 +0000 (23:46 +0100)]
BUGS: describe bug handling process

8 years agoRELEASE-NOTES: synced with 19613fb3
Daniel Stenberg [Mon, 28 Nov 2016 22:40:48 +0000 (23:40 +0100)]
RELEASE-NOTES: synced with 19613fb3

8 years agohttp2: check nghttp2_session_set_local_window_size exists
Jay Satiro [Mon, 28 Nov 2016 19:08:35 +0000 (14:08 -0500)]
http2: check nghttp2_session_set_local_window_size exists

The function only exists since nghttp2 1.12.0.

Bug: https://github.com/curl/curl/commit/a4d8888#commitcomment-19985676
Reported-by: Michael Kaufmann
8 years agohttp2: Fix crashes when parent stream gets aborted
Anders Bakken [Mon, 14 Nov 2016 23:32:00 +0000 (15:32 -0800)]
http2: Fix crashes when parent stream gets aborted

Closes #1125

8 years agocmdline-docs: more options converted and fixed
Daniel Stenberg [Mon, 28 Nov 2016 00:01:13 +0000 (01:01 +0100)]
cmdline-docs: more options converted and fixed

Now all options are in the new system.

8 years agogen: include footer in mainpage output
Daniel Stenberg [Sun, 27 Nov 2016 23:54:16 +0000 (00:54 +0100)]
gen: include footer in mainpage output

8 years agolib1536: checksrc compliance
Jay Satiro [Mon, 28 Nov 2016 08:06:04 +0000 (03:06 -0500)]
lib1536: checksrc compliance

8 years agocmdline-opts: more command line options documented
Daniel Stenberg [Sun, 27 Nov 2016 23:50:25 +0000 (00:50 +0100)]
cmdline-opts: more command line options documented

Moved over to the new format

8 years agocurl: remove --proxy-ssl* options
Daniel Stenberg [Sun, 27 Nov 2016 23:07:45 +0000 (00:07 +0100)]
curl: remove --proxy-ssl* options

There's mostly likely no need to allow setting SSLv2/3 version for HTTPS
proxy. Those protocols are insecure by design and deprecated.

8 years agoCURLOPT_PROXY_*.3: polished some proxy option man pages
Daniel Stenberg [Sat, 26 Nov 2016 23:21:15 +0000 (00:21 +0100)]
CURLOPT_PROXY_*.3: polished some proxy option man pages

8 years agoos400: support CURLOPT_PROXY_PINNEDPUBLICKEY
Patrick Monnerat [Sat, 26 Nov 2016 17:52:30 +0000 (18:52 +0100)]
os400: support CURLOPT_PROXY_PINNEDPUBLICKEY

Also define it in ILE/RPG binding.

8 years agocurl_version_info: add CURL_VERSION_HTTPS_PROXY
Okhin Vasilij [Fri, 25 Nov 2016 09:27:22 +0000 (16:27 +0700)]
curl_version_info: add CURL_VERSION_HTTPS_PROXY

Closes #1142

8 years agotests: Add some testcases for recent new features.
Frank Gevaerts [Fri, 25 Nov 2016 21:32:32 +0000 (22:32 +0100)]
tests: Add some testcases for recent new features.

Add missing tests for CURLINFO_SCHEME, CURLINFO_PROTOCOL, %{scheme},
and %{http_version}

closes #1143

8 years agocurl_easy_reset: clear info for CULRINFO_PROTOCOL and CURLINFO_SCHEME
Frank Gevaerts [Fri, 25 Nov 2016 21:33:59 +0000 (22:33 +0100)]
curl_easy_reset: clear info for CULRINFO_PROTOCOL and CURLINFO_SCHEME

8 years agoCURLOPT_PROXY_CAINFO.3: clarify proxy use
Daniel Stenberg [Fri, 25 Nov 2016 15:40:32 +0000 (16:40 +0100)]
CURLOPT_PROXY_CAINFO.3: clarify proxy use

8 years agoCURLOPT_PROXY_CRLFILE.3: clarify https proxy and availability
Daniel Stenberg [Fri, 25 Nov 2016 15:36:27 +0000 (16:36 +0100)]
CURLOPT_PROXY_CRLFILE.3: clarify https proxy and availability

8 years agocurl_easy_setopt.3: add CURLOPT_PROXY_PINNEDPUBLICKEY
Daniel Stenberg [Fri, 25 Nov 2016 13:17:22 +0000 (14:17 +0100)]
curl_easy_setopt.3: add CURLOPT_PROXY_PINNEDPUBLICKEY

Follow-up to 4f8b17743d7c55a

8 years agodocs: include all opts man pages in dist
Daniel Stenberg [Fri, 25 Nov 2016 10:14:58 +0000 (11:14 +0100)]
docs: include all opts man pages in dist

Sorted the lists too.

... and include the new ones in the PDF and HTML generation targets

8 years agoHTTPS Proxy: Implement CURLOPT_PROXY_PINNEDPUBLICKEY
Thomas Glanzmann [Fri, 25 Nov 2016 09:47:25 +0000 (10:47 +0100)]
HTTPS Proxy: Implement CURLOPT_PROXY_PINNEDPUBLICKEY

8 years agourl: proxy: Use 443 as default port for https proxies
Thomas Glanzmann [Thu, 24 Nov 2016 18:40:30 +0000 (19:40 +0100)]
url: proxy: Use 443 as default port for https proxies

8 years agoTODO: removed "HTTPS proxy"
Daniel Stenberg [Fri, 25 Nov 2016 08:52:22 +0000 (09:52 +0100)]
TODO: removed "HTTPS proxy"

8 years agowinbuild: add config option ENABLE_NGHTTP2
Jan-E [Fri, 25 Nov 2016 05:06:14 +0000 (06:06 +0100)]
winbuild: add config option ENABLE_NGHTTP2

Closes #1141

8 years agotool_urlglob: Improve sanity check in glob_range
Jay Satiro [Fri, 25 Nov 2016 03:25:14 +0000 (22:25 -0500)]
tool_urlglob: Improve sanity check in glob_range

Prior to this change we depended on errno if strtol could not perform a
conversion. POSIX says EINVAL *may* be set. Some implementations like
Microsoft's will not set it if there's no conversion.

Ref: https://github.com/curl/curl/commit/ee4f7660#commitcomment-19658189

8 years agotool_help: Change description for --retry-connrefused
Jay Satiro [Fri, 25 Nov 2016 03:15:14 +0000 (22:15 -0500)]
tool_help: Change description for --retry-connrefused

Ref: https://github.com/curl/curl/pull/1064#issuecomment-260052409

8 years agoos400: sync ILE/RPG binding
Patrick Monnerat [Fri, 25 Nov 2016 02:25:21 +0000 (03:25 +0100)]
os400: sync ILE/RPG binding

8 years agotest1135: Fix curl_easy_duphandle prototype for code style
Jay Satiro [Fri, 25 Nov 2016 00:50:16 +0000 (19:50 -0500)]
test1135: Fix curl_easy_duphandle prototype for code style

Follow-up to dbadaeb which changed the style.

8 years agox509asn1: Restore the parameter check in Curl_getASN1Element
Jay Satiro [Fri, 25 Nov 2016 00:43:20 +0000 (19:43 -0500)]
x509asn1: Restore the parameter check in Curl_getASN1Element

- Restore the removed parts of the parameter check.

Follow-up to 945f60e which altered the parameter check.

8 years agoRELEASE-NOTES: update option counters
Daniel Stenberg [Thu, 24 Nov 2016 23:47:52 +0000 (00:47 +0100)]
RELEASE-NOTES: update option counters

8 years agoadd CURLINFO_SCHEME, CURLINFO_PROTOCOL, and %{scheme}
Frank Gevaerts [Wed, 23 Nov 2016 09:44:18 +0000 (10:44 +0100)]
add CURLINFO_SCHEME, CURLINFO_PROTOCOL, and %{scheme}

Adds access to the effectively used protocol/scheme to both libcurl and
curl, both in string and numeric (CURLPROTO_*) form.

Note that the string form will be uppercase, as it is just the internal
string.

As these strings are declared internally as const, and all other strings
returned by curl_easy_getinfo() are de-facto const as well, string
handling in getinfo.c got const-ified.

Closes #1137

8 years agoRELEASE-NOTES: synced with 63198a4750aeb
Daniel Stenberg [Thu, 24 Nov 2016 23:31:48 +0000 (00:31 +0100)]
RELEASE-NOTES: synced with 63198a4750aeb

8 years agocurl.1: the new --proxy options ship in 7.52.0
Daniel Stenberg [Thu, 24 Nov 2016 23:14:39 +0000 (00:14 +0100)]
curl.1: the new --proxy options ship in 7.52.0

8 years agochecksrc: move open braces to comply with function declaration style
Daniel Stenberg [Wed, 23 Nov 2016 07:49:04 +0000 (08:49 +0100)]
checksrc: move open braces to comply with function declaration style

8 years agochecksrc: detect wrongly placed open braces in func declarations
Daniel Stenberg [Wed, 23 Nov 2016 07:48:42 +0000 (08:48 +0100)]
checksrc: detect wrongly placed open braces in func declarations

8 years agochecksrc: white space edits to comply to stricter checksrc
Daniel Stenberg [Wed, 23 Nov 2016 07:30:18 +0000 (08:30 +0100)]
checksrc: white space edits to comply to stricter checksrc

8 years agochecksrc: verify ASTERISKNOSPACE
Daniel Stenberg [Wed, 23 Nov 2016 07:29:42 +0000 (08:29 +0100)]
checksrc: verify ASTERISKNOSPACE

Detects (char*) and 'char*foo' uses.

8 years agochecksrc: code style: use 'char *name' style
Daniel Stenberg [Wed, 23 Nov 2016 06:53:24 +0000 (07:53 +0100)]
checksrc: code style: use 'char *name' style

8 years agochecksrc: add ASTERISKSPACE
Daniel Stenberg [Wed, 23 Nov 2016 06:52:38 +0000 (07:52 +0100)]
checksrc: add ASTERISKSPACE

Verifies a 'char *name' style, with no space after the asterisk.

8 years agoopenssl: remove dead code
Daniel Stenberg [Wed, 23 Nov 2016 22:11:38 +0000 (23:11 +0100)]
openssl: remove dead code

Coverity CID 1394666

8 years agoHTTPS-proxy: fixed mbedtls and polishing
Okhin Vasilij [Mon, 21 Nov 2016 10:01:25 +0000 (17:01 +0700)]
HTTPS-proxy: fixed mbedtls and polishing

8 years agodarwinssl: adopted to the HTTPS proxy changes
Daniel Stenberg [Fri, 18 Nov 2016 10:40:01 +0000 (11:40 +0100)]
darwinssl: adopted to the HTTPS proxy changes

It builds and runs all test cases. No adaptations for actual HTTPS proxy
support has been made.

8 years agogtls: fix indent to silence compiler warning
Daniel Stenberg [Fri, 18 Nov 2016 07:46:59 +0000 (08:46 +0100)]
gtls: fix indent to silence compiler warning

vtls/gtls.c: In function ‘Curl_gtls_data_pending’:
vtls/gtls.c:1429:3: error: this ‘if’ clause does not guard... [-Werror=misleading-indentation]
   if(conn->proxy_ssl[connindex].session &&
      ^~
      vtls/gtls.c:1433:5: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the ‘if’
           return res;

8 years agombedtls: Fix compile errors
Thomas Glanzmann [Thu, 17 Nov 2016 12:17:26 +0000 (13:17 +0100)]
mbedtls: Fix compile errors

8 years agoproxy: Support HTTPS proxy and SOCKS+HTTP(s)
Alex Rousskov [Wed, 16 Nov 2016 17:49:15 +0000 (10:49 -0700)]
proxy: Support HTTPS proxy and SOCKS+HTTP(s)

* HTTPS proxies:

An HTTPS proxy receives all transactions over an SSL/TLS connection.
Once a secure connection with the proxy is established, the user agent
uses the proxy as usual, including sending CONNECT requests to instruct
the proxy to establish a [usually secure] TCP tunnel with an origin
server. HTTPS proxies protect nearly all aspects of user-proxy
communications as opposed to HTTP proxies that receive all requests
(including CONNECT requests) in vulnerable clear text.

With HTTPS proxies, it is possible to have two concurrent _nested_
SSL/TLS sessions: the "outer" one between the user agent and the proxy
and the "inner" one between the user agent and the origin server
(through the proxy). This change adds supports for such nested sessions
as well.

A secure connection with a proxy requires its own set of the usual SSL
options (their actual descriptions differ and need polishing, see TODO):

  --proxy-cacert FILE        CA certificate to verify peer against
  --proxy-capath DIR         CA directory to verify peer against
  --proxy-cert CERT[:PASSWD] Client certificate file and password
  --proxy-cert-type TYPE     Certificate file type (DER/PEM/ENG)
  --proxy-ciphers LIST       SSL ciphers to use
  --proxy-crlfile FILE       Get a CRL list in PEM format from the file
  --proxy-insecure           Allow connections to proxies with bad certs
  --proxy-key KEY            Private key file name
  --proxy-key-type TYPE      Private key file type (DER/PEM/ENG)
  --proxy-pass PASS          Pass phrase for the private key
  --proxy-ssl-allow-beast    Allow security flaw to improve interop
  --proxy-sslv2              Use SSLv2
  --proxy-sslv3              Use SSLv3
  --proxy-tlsv1              Use TLSv1
  --proxy-tlsuser USER       TLS username
  --proxy-tlspassword STRING TLS password
  --proxy-tlsauthtype STRING TLS authentication type (default SRP)

All --proxy-foo options are independent from their --foo counterparts,
except --proxy-crlfile which defaults to --crlfile and --proxy-capath
which defaults to --capath.

Curl now also supports %{proxy_ssl_verify_result} --write-out variable,
similar to the existing %{ssl_verify_result} variable.

Supported backends: OpenSSL, GnuTLS, and NSS.

* A SOCKS proxy + HTTP/HTTPS proxy combination:

If both --socks* and --proxy options are given, Curl first connects to
the SOCKS proxy and then connects (through SOCKS) to the HTTP or HTTPS
proxy.

TODO: Update documentation for the new APIs and --proxy-* options.
Look for "Added in 7.XXX" marks.

8 years agoDeclare endian read functions argument as a const pointer.
Patrick Monnerat [Thu, 24 Nov 2016 15:14:21 +0000 (16:14 +0100)]
Declare endian read functions argument as a const pointer.
This is done for all functions of the form Curl_read[136][624]_[lb]e.

8 years agoLimit ASN.1 structure sizes to 256K. Prevent some allocation size overflows.
Patrick Monnerat [Thu, 24 Nov 2016 13:28:39 +0000 (14:28 +0100)]
Limit ASN.1 structure sizes to 256K. Prevent some allocation size overflows.
See CRL-01-006.

8 years agourl: Fix conn reuse for local ports and interfaces
Jay Satiro [Tue, 22 Nov 2016 21:10:06 +0000 (16:10 -0500)]
url: Fix conn reuse for local ports and interfaces

- Fix connection reuse for when the proposed new conn 'needle' has a
specified local port but does not have a specified device interface.

Bug: https://curl.haxx.se/mail/lib-2016-11/0137.html
Reported-by: bjt3[at]hotmail.com
8 years agorand: pass in number of randoms as an unsigned argument
Daniel Stenberg [Mon, 21 Nov 2016 06:51:42 +0000 (07:51 +0100)]
rand: pass in number of randoms as an unsigned argument

8 years agorand: Fix potentially uninitialized result warning
Jay Satiro [Mon, 21 Nov 2016 04:57:47 +0000 (23:57 -0500)]
rand: Fix potentially uninitialized result warning

8 years agovtls: fix build warnings
Marcel Raad [Sat, 19 Nov 2016 13:09:03 +0000 (14:09 +0100)]
vtls: fix build warnings

Fix warnings about conversions from long to time_t in openssl.c and
schannel.c.

Follow-up to de4de4e3c7c

8 years agolib: fix compiler warnings after de4de4e3c7c
Marcel Raad [Fri, 18 Nov 2016 09:07:08 +0000 (10:07 +0100)]
lib: fix compiler warnings after de4de4e3c7c

Visual C++ now complains about implicitly casting time_t (64-bit) to
long (32-bit). Fix this by changing some variables from long to time_t,
or explicitly casting to long where the public interface would be
affected.

Closes #1131

8 years agoDon't mix unix domain sockets with regular ones
Isaac Boukris [Mon, 7 Nov 2016 19:25:44 +0000 (21:25 +0200)]
Don't mix unix domain sockets with regular ones

When reusing a connection, make sure the unix domain
socket option matches.

8 years agotests: Fix HTTP2-Settings header for huge window size
Jay Satiro [Thu, 17 Nov 2016 06:04:00 +0000 (01:04 -0500)]
tests: Fix HTTP2-Settings header for huge window size

Follow-up to a4d8888. Changing the window size in that commit resulted
in a different HTTP2-Settings upgrade header, causing test 1800 to fail.

8 years agohttp2: Use huge HTTP/2 windows
Jay Satiro [Wed, 16 Nov 2016 07:55:30 +0000 (02:55 -0500)]
http2: Use huge HTTP/2 windows

- Improve performance by using a huge HTTP/2 window size.

Bug: https://github.com/curl/curl/issues/1102
Reported-by: afrind@users.noreply.github.com
Assisted-by: Tatsuhiro Tsujikawa
8 years agocmdline-docs: more conversion
Daniel Stenberg [Wed, 16 Nov 2016 13:20:36 +0000 (14:20 +0100)]
cmdline-docs: more conversion

8 years agogen: support 'protos'
Daniel Stenberg [Wed, 16 Nov 2016 13:20:13 +0000 (14:20 +0100)]
gen: support 'protos'

and warn on unrecognized lines

8 years agogen: support 'single' to make an individual page man page
Daniel Stenberg [Wed, 16 Nov 2016 10:41:02 +0000 (11:41 +0100)]
gen: support 'single' to make an individual page man page

8 years agocmdline-docs: more options converted over
Daniel Stenberg [Tue, 15 Nov 2016 22:44:58 +0000 (23:44 +0100)]
cmdline-docs: more options converted over

8 years agogen: support 'redirect'
Daniel Stenberg [Wed, 16 Nov 2016 09:42:02 +0000 (10:42 +0100)]
gen: support 'redirect'

... and warn for too long --help lines