- Jan 13, 2017
-
-
Isaac Boukris authored
In addition to unix domain sockets, Linux also supports an abstract namespace which is independent of the filesystem. In order to support it, add new CURLOPT_ABSTRACT_UNIX_SOCKET option which uses the same storage as CURLOPT_UNIX_SOCKET_PATH internally, along with a flag to specify abstract socket. On non-supporting platforms, the abstract address will be interpreted as an empty string and fail gracefully. Also add new --abstract-unix-socket tool parameter. Signed-off-by: Isaac Boukris <iboukris@gmail.com> Reported-by: Chungtsun Li (typeless) Reviewed-by: Daniel Stenberg Reviewed-by: Peter Wu Closes #1197 Fixes #1061
-
- Dec 29, 2016
-
-
Daniel Stenberg authored
This error code was once introduced when some library was dynamically loaded and a funciton within said library couldn't be found.
-
- Dec 16, 2016
-
-
Daniel Stenberg authored
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.
-
Daniel Stenberg authored
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.
-
- Dec 13, 2016
-
-
Daniel Stenberg authored
In order to make the code style more uniform everywhere
-
- Nov 26, 2016
-
-
Okhin Vasilij authored
Closes #1142
-
- Nov 25, 2016
-
-
Thomas Glanzmann authored
-
- Nov 24, 2016
-
-
Frank Gevaerts authored
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
-
Daniel Stenberg authored
-
Alex Rousskov authored
* 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.
-
- Nov 07, 2016
-
-
Kamil Dudka authored
Fully implemented with the NSS backend only for now. Reviewed-by: Ray Satiro
-
- Sep 22, 2016
-
-
Michael Kaufmann authored
Add the new option CURLOPT_KEEP_SENDING_ON_ERROR to control whether sending the request body shall be completed when the server responds early with an error status code. This is suitable for manual NTLM authentication. Reviewed-by: Jay Satiro Closes https://github.com/curl/curl/pull/904
-
- Sep 08, 2016
-
-
Jay Satiro authored
Since we're using CURLE_FTP_WEIRD_SERVER_REPLY in imap, pop3 and smtp as more of a generic "failed to parse" introduce an alias without FTP in the name. Closes https://github.com/curl/curl/pull/975
-
- Aug 09, 2016
-
-
Daniel Stenberg authored
-
- Jul 31, 2016
-
-
Daniel Stenberg authored
Many applications assume the actual contents of the public types and use that do for example forward declarations (saving them from including our public header) which then breaks when we switch from void * to a struct *. I'm not convinced we were wrong, but since this practise seems widespread enough I'm willing to (partly) step down. Now libcurl uses the struct itself when it is built and it allows applications to use the struct type if CURL_STRICTER is defined at the time of the #include. Reported-by: Peter Frühberger Fixes #926
-
- Jun 22, 2016
-
-
Daniel Stenberg authored
-
Daniel Stenberg authored
Instead of typedef'ing to void, typedef to their corresponding actual struct names to allow compilers to type-check. Assisted-by: Reinhard Max
-
- May 30, 2016
-
-
Frank Gevaerts authored
Adds access to the effectively used http version to both libcurl and curl. Closes #799
-
- Apr 25, 2016
-
-
Daniel Stenberg authored
-
- Apr 22, 2016
-
-
Patrick Monnerat authored
-
- Apr 18, 2016
-
-
Alessandro Ghedini authored
-
Daniel Stenberg authored
-
- Apr 17, 2016
-
-
Michael Kaufmann authored
Makes curl connect to the given host+port instead of the host+port found in the URL.
-
- Apr 12, 2016
-
-
Tatsuhiro Tsujikawa authored
Previously, when a stream was closed with other than NGHTTP2_NO_ERROR by RST_STREAM, underlying TCP connection was dropped. This is undesirable since there may be other streams multiplexed and they are very much fine. This change introduce new error code CURLE_HTTP2_STREAM, which indicates stream error that only affects the relevant stream, and connection should be kept open. The existing CURLE_HTTP2 means connection error in general. Ref: https://github.com/curl/curl/issues/659 Ref: https://github.com/curl/curl/pull/663
-
- Apr 09, 2016
-
-
Steve Holme authored
As these two options provide identical functionality, the former for SOCK5 proxies and the latter for HTTP proxies, merged the two options together. As such CURLOPT_SOCKS5_GSSAPI_SERVICE is marked as deprecated as of 7.49.0.
-
- Apr 03, 2016
-
-
Daniel Stenberg authored
-
- Apr 01, 2016
-
-
Daniel Stenberg authored
So that we only do the extra typedefs in curl_memory.h when we really need to and avoid double typedefs. follow-up commit to 7218b52c Thanks-to: Steve Holme
-
- Mar 31, 2016
-
-
Diego Bes authored
Supports HTTP/2 over clear TCP - Optimize switching to HTTP/2 by removing calls to init and setup before switching. Switching will eventually call setup and setup calls init. - Supports new version to “force” the use of HTTP/2 over clean TCP - Add common line parameter “--http2-prior-knowledge” to the Curl command line tool.
-
- Feb 24, 2016
-
-
Jay Satiro authored
The two options are almost the same, except in the case of OpenSSL: CURLINFO_TLS_SESSION OpenSSL session internals is SSL_CTX *. CURLINFO_TLS_SSL_PTR OpenSSL session internals is SSL *. For backwards compatibility we couldn't modify CURLINFO_TLS_SESSION to return an SSL pointer for OpenSSL. Also, add support for the 'internals' member to point to SSL object for the other backends axTLS, PolarSSL, Secure Channel, Secure Transport and wolfSSL. Bug: https://github.com/curl/curl/issues/234 Reported-by: <dkjjr89@users.noreply.github.com> Bug: https://curl.haxx.se/mail/lib-2015-09/0127.html Reported-by: Michael König
-
- Feb 23, 2016
-
-
Michael Koenig authored
Some TFTP server implementations ignore the "TFTP Option extension" (RFC 1782-1784, 2347-2349), or implement it in a flawed way, causing problems with libcurl. Another switch for curl_easy_setopt "CURLOPT_TFTP_NO_OPTIONS" is introduced which prevents libcurl from sending TFTP option requests to a server, avoiding many problems caused by faulty implementations. Bug: https://github.com/curl/curl/issues/481
-
- Feb 03, 2016
-
-
Dan Fandrich authored
-
- Feb 02, 2016
-
-
Daniel Stenberg authored
-
- Dec 13, 2015
-
-
Daniel Stenberg authored
... and stick to 1.1 for HTTP. This is in line with what browsers do and should have very little risk.
-
- Dec 07, 2015
-
-
Gisle Vanem authored
The name of the header guard in lwIP's <lwip/opt.h> has changed from '__LWIP_OPT_H__' to 'LWIP_HDR_OPT_H' (bug #35874 in May 2015). Other fixes: - In curl_setup.h, the problem with an old PSDK doesn't apply if lwIP is used. - In memdebug.h, the 'socket' should be undefined first due to lwIP's lwip_socket() macro. - In curl_addrinfo.c lwIP's getaddrinfo() + freeaddrinfo() macros need special handling because they were undef'ed in memdebug.h. - In select.c we can't use preprocessor conditionals inside select if MSVC and select is a macro, as it is with lwIP. http://curl.haxx.se/mail/lib-2015-12/0023.html http://curl.haxx.se/mail/lib-2015-12/0024.html
-
Gisle Vanem authored
-
- Nov 19, 2015
-
-
Patrick Monnerat authored
-
- Nov 13, 2015
-
-
Daniel Stenberg authored
As an alias for OBJECTPOINT. Provided to allow us to grep for all string options easier.
-
- Nov 02, 2015
-
-
Daniel Stenberg authored
Closes #425
-
- Oct 31, 2015
-
-
Daniel Stenberg authored
Fixes a name space pollution at the cost of programs using one of these defines will no longer compile. However, the vast majority of libcurl programs that do multipart formposts use curl_formadd() to build this list. Closes #506
-
- Oct 23, 2015
-
-
Daniel Stenberg authored
-