- Jun 22, 2016
-
-
Daniel Stenberg authored
-
Jay Satiro authored
Prior to this change we called Curl_ssl_getsessionid and Curl_ssl_addsessionid regardless of whether session ID reusing was enabled. According to comments that is in case session ID reuse was disabled but then later enabled. The old way was not intuitive and probably not something users expected. When a user disables session ID caching I'd guess they don't expect the session ID to be cached anyway in case the caching is later enabled.
-
- Jun 01, 2016
-
-
Ivan Avdeev authored
Sessionid cache management is inseparable from managing individual session lifetimes. E.g. for reference-counted sessions (like those in SChannel and OpenSSL engines) every session addition and removal should be accompanied with refcount increment and decrement respectively. Failing to do so synchronously leads to a race condition that causes symptoms like use-after-free and memory corruption. This commit: - makes existing session cache locking explicit, thus allowing individual engines to manage lock's scope. - fixes OpenSSL and SChannel engines by putting refcount management inside this lock's scope in relevant places. - adds these explicit locking calls to other engines that use sessionid cache to accommodate for this change. Note, however, that it is unknown whether any of these engines could also have this race. Bug: https://github.com/curl/curl/issues/815 Fixes #815 Closes #847
-
- May 09, 2016
-
-
Daniel Stenberg authored
Only protocols that actually have a protocol registered for ALPN and NPN should try to get that negotiated in the TLS handshake. That is only HTTPS (well, http/1.1 and http/2) right now. Previously ALPN and NPN would wrongly be used in all handshakes if libcurl was built with it enabled. Reported-by: Jay Satiro Fixes #789
-
- Apr 03, 2016
-
-
Daniel Stenberg authored
-
- Feb 14, 2016
-
-
Shine Fan authored
Bug: https://github.com/curl/curl/pull/651
-
- Feb 08, 2016
-
-
Ludwig Nussel authored
When trying to verify a peer without having any root CA certificates set, this makes libcurl use the TLS library's built in default as fallback. Closes #569
-
- Feb 04, 2016
-
-
Viktor Szakats 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.
-
- Nov 24, 2015
-
-
Daniel Stenberg authored
This reverts commit 64e959ff. Feedback-by: Dan Fandrich URL: http://curl.haxx.se/mail/lib-2015-11/0062.html
-
- Nov 13, 2015
-
-
Daniel Stenberg authored
They tend to never get updated anyway so they're frequently inaccurate and we never go back to revisit them anyway. We document issues to work on properly in KNOWN_BUGS and TODO instead.
-
- Sep 23, 2015
-
-
Mike Crowe authored
If GnuTLS fails to read the certificate then include whatever reason it provides in the failure message reported to the client. Signed-off-by:
Mike Crowe <mac@mcrowe.com>
-
- Sep 22, 2015
-
-
Mike Crowe authored
The gnutls vtls back-end was previously ignoring any password set via CURLOPT_KEYPASSWD. Presumably this was because gnutls_certificate_set_x509_key_file did not support encrypted keys. gnutls now has a gnutls_certificate_set_x509_key_file2 function that does support encrypted keys. Let's determine at compile time whether the available gnutls supports this new function. If it does then use it to pass the password. If it does not then emit a helpful diagnostic if a password is set. This is preferable to the previous behaviour of just failing to read the certificate without giving a reason in that case. Signed-off-by:
Mike Crowe <mac@mcrowe.com>
-
- Sep 19, 2015
-
-
Daniel Hwang authored
Add a "pinnedpubkey" section to the "Server Certificate" verbose Bug: https://github.com/bagder/curl/issues/410 Reported-by: W. Mark Kubacki Closes #430 Closes #410
-
- Jul 01, 2015
-
-
Travis Burtrum authored
-
- Jun 01, 2015
-
-
Jay Satiro authored
- Change fopen calls to use FOPEN_READTEXT instead of "r" or "rt" - Change fopen calls to use FOPEN_WRITETEXT instead of "w" or "wt" This change is to explicitly specify when we need to read/write text. Unfortunately 't' is not part of POSIX fopen so we can't specify it directly. Instead we now have FOPEN_READTEXT, FOPEN_WRITETEXT. Prior to this change we had an issue on Windows if an application that uses libcurl overrides the default file mode to binary. The default file mode in Windows is normally text mode (translation mode) and that's what libcurl expects. Bug: https://github.com/bagder/curl/pull/258#issuecomment-107093055 Reported-by: Orgad Shaneh
-
- May 20, 2015
-
-
Dmitry Eremin-Solenikov authored
Stop curl from failing when non-fatal alert is received during handshake. This e.g. fixes lots of problems when working with https sites through proxies.
-
- May 04, 2015
-
-
Alessandro Ghedini authored
Also print the revocation reason if appropriate.
-
- Mar 21, 2015
-
-
Daniel Stenberg authored
Coverity CID 1291167 pointed out that 'rc' was received but never used when gnutls_credentials_set() was used. Added return code check now.
-
Daniel Stenberg authored
Coverity CID 1291165 pointed out 'chainp' could be dereferenced when NULL if gnutls_certificate_get_peers() had previously failed.
-
Daniel Stenberg authored
Coverity CID 1291166 pointed out that we could read this variable uninitialized.
-
- Mar 20, 2015
-
-
Alessandro Ghedini authored
-
- Mar 17, 2015
-
-
Daniel Stenberg authored
-
- Mar 10, 2015
-
-
Alessandro Ghedini authored
-
Alessandro Ghedini authored
-
Alessandro Ghedini authored
Instead of priting cipher and MAC algorithms names separately, print the whole cipher suite string which also includes the key exchange algorithm, along with the negotiated TLS version.
-
Daniel Stenberg authored
-
Alessandro Ghedini authored
-
- Mar 07, 2015
-
-
Daniel Stenberg authored
Since they already exist and will make comparing easier
-
Alessandro Ghedini authored
-
- Mar 03, 2015
-
-
Daniel Stenberg authored
No need to use _MPRINTF_REPLACE internally.
-
- Feb 19, 2015
-
-
Alessandro Ghedini authored
-
- Jan 17, 2015
-
-
Steve Holme authored
Carrying on from commit 037cd0d9, removed the following unimplemented instances of curlssl_close_all(): Curl_axtls_close_all() Curl_darwinssl_close_all() Curl_cyassl_close_all() Curl_gskit_close_all() Curl_gtls_close_all() Curl_nss_close_all() Curl_polarssl_close_all()
-
- Jan 16, 2015
-
-
Daniel Stenberg authored
-
Alessandro Ghedini authored
Also known as "status_request" or OCSP stapling, defined in RFC6066 section 8. This requires GnuTLS 3.1.3 or higher to build, however it's recommended to use at least GnuTLS 3.3.11 since previous versions had a bug that caused the OCSP response verfication to fail even on valid responses.
-
- Dec 25, 2014
-
-
Steve Holme authored
The return type of this function is a boolean value, and even uses a bool internally, so use bool in the function declaration as well as the variables that store the return value, to avoid any confusion.
-
- Dec 24, 2014
-
-
Steve Holme authored
-
- Dec 08, 2014
-
-
Daniel Stenberg authored
-
- Oct 23, 2014
-
-
Daniel Stenberg authored
Bug: http://curl.haxx.se/bug/view.cgi?id=1437 Reported-by: Julien
-