mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-12-06 19:41:15 +01:00
Treat SW_SERVER_HELLO_B as another sign of an SSL handshake
We've been only treating SW_SERVER_HELLO_A as meaning that an SSL handshake was happening. But that's not right: if the initial attempt to write a ServerHello fails, we would get a callback in state SW_SERVER_HELLO_B instead. (That's "instead" and not "in addition": any failed attempt to write the hello will fail and cause the info callback not to get written.) Fix for bug 4592; bugfix on 0.2.0.13-alpha.
This commit is contained in:
@@ -0,0 +1,3 @@
|
||||
o Minor bugfixes:
|
||||
- Detect SSL handshake even when the initial attempt to write the
|
||||
server hello fails. Fix for bug 4592; bugfix on 0.2.0.13-alpha.
|
||||
+2
-1
@@ -951,7 +951,8 @@ tor_tls_server_info_callback(const SSL *ssl, int type, int val)
|
||||
(void) val;
|
||||
if (type != SSL_CB_ACCEPT_LOOP)
|
||||
return;
|
||||
if (ssl->state != SSL3_ST_SW_SRVR_HELLO_A)
|
||||
if ((ssl->state != SSL3_ST_SW_SRVR_HELLO_A) &&
|
||||
(ssl->state != SSL3_ST_SW_SRVR_HELLO_B))
|
||||
return;
|
||||
|
||||
tls = tor_tls_get_by_ssl(ssl);
|
||||
|
||||
Reference in New Issue
Block a user