]> git.ipfire.org Git - thirdparty/squid.git/commitdiff
Handshake Error: ccs received early
authorChristos Tsantilas <chtsanti@users.sourceforge.net>
Sun, 17 Apr 2016 10:43:27 +0000 (22:43 +1200)
committerAmos Jeffries <squid3@treenet.co.nz>
Sun, 17 Apr 2016 10:43:27 +0000 (22:43 +1200)
Some servers cause an SSL handshake error with peek and splice.
The problem is related to the TLS Session Tickets extension handling. Squid
expects always a TLS Session Tickets extension, included in server hello
message, to assume that the ticket accepted and the session is a resumed
session, which is not always true.

This is a Measurement Factory project

src/ssl/bio.cc

index 86b455c5b4cb24dd6ceaa4fb4ad5e710964559db..f502189a8095f9cb73d3abb808ebe8c93996afc1 100644 (file)
@@ -515,9 +515,7 @@ Ssl::ServerBio::resumingSession()
         return clientFeatures.sessionId == serverFeatures.sessionId;
 
     // is this a session resuming attempt using TLS tickets?
-    if (clientFeatures.hasTlsTicket &&
-            serverFeatures.tlsTicketsExtension &&
-            serverFeatures.hasCcsOrNst)
+    if (clientFeatures.hasTlsTicket && receivedHelloFeatures_.hasCcsOrNst)
         return true;
 
     return false;