curl/lib/vtls
Anders Bakken 856baf5a46 TLS: SSL_peek is not a const operation
Calling SSL_peek can cause bytes to be read from the raw socket which in
turn can upset the select machinery that determines whether there's data
available on the socket.

Since Curl_ossl_check_cxn only tries to determine whether the socket is
alive and doesn't actually need to see the bytes SSL_peek seems like
the wrong function to call.

We're able to occasionally reproduce a connect timeout due to this
bug. What happens is that Curl doesn't know to call SSL_connect again
after the peek happens since data is buffered in the SSL buffer and thus
select won't fire for this socket.

Closes #795
2016-05-11 00:06:40 +02:00
..
axtls.c code: style updates 2016-04-03 22:38:36 +02:00
axtls.h URLs: change all http:// URLs to https:// 2016-02-03 00:19:02 +01:00
cyassl.c TLS: move the ALPN/NPN enable bits to the connection 2016-05-09 15:30:25 -04:00
cyassl.h tls: make setting pinnedkey option fail if not supported 2016-05-01 17:05:38 +02:00
darwinssl.c darwinssl: removed commented out code 2016-04-19 08:53:31 +02:00
darwinssl.h URLs: change all http:// URLs to https:// 2016-02-03 00:19:02 +01:00
gskit.c URLs: change all http:// URLs to https:// 2016-02-03 00:19:02 +01:00
gskit.h URLs: change all http:// URLs to https:// 2016-02-03 00:19:02 +01:00
gtls.c TLS: move the ALPN/NPN enable bits to the connection 2016-05-09 15:30:25 -04:00
gtls.h tls: make setting pinnedkey option fail if not supported 2016-05-01 17:05:38 +02:00
mbedtls.c TLS: move the ALPN/NPN enable bits to the connection 2016-05-09 15:30:25 -04:00
mbedtls.h tls: make setting pinnedkey option fail if not supported 2016-05-01 17:05:38 +02:00
nss.c TLS: move the ALPN/NPN enable bits to the connection 2016-05-09 15:30:25 -04:00
nssg.h tls: make setting pinnedkey option fail if not supported 2016-05-01 17:05:38 +02:00
openssl.c TLS: SSL_peek is not a const operation 2016-05-11 00:06:40 +02:00
openssl.h tls: make setting pinnedkey option fail if not supported 2016-05-01 17:05:38 +02:00
polarssl_threadlock.c URLs: change all http:// URLs to https:// 2016-02-03 00:19:02 +01:00
polarssl_threadlock.h URLs: change all http:// URLs to https:// 2016-02-03 00:19:02 +01:00
polarssl.c TLS: move the ALPN/NPN enable bits to the connection 2016-05-09 15:30:25 -04:00
polarssl.h tls: make setting pinnedkey option fail if not supported 2016-05-01 17:05:38 +02:00
schannel.c TLS: move the ALPN/NPN enable bits to the connection 2016-05-09 15:30:25 -04:00
schannel.h URLs: change all http:// URLs to https:// 2016-02-03 00:19:02 +01:00
vtls.c tls: make setting pinnedkey option fail if not supported 2016-05-01 17:05:38 +02:00
vtls.h vtls.h: remove a space before semicolon 2016-04-19 08:53:31 +02:00