浏览代码

Don't schedule excess_renegotiations_callback unless it's set

Partial fix for bug 4587; reported by "frosty_un".
Nick Mathewson 14 年之前
父节点
当前提交
617617e21a
共有 1 个文件被更改,包括 2 次插入1 次删除
  1. 2 1
      src/common/tortls.c

+ 2 - 1
src/common/tortls.c

@@ -1318,7 +1318,8 @@ tor_tls_got_client_hello(tor_tls_t *tls)
     }
 
     tls->got_renegotiate = 1;
-  } else if (tls->server_handshake_count > 2) {
+  } else if (tls->server_handshake_count > 2 &&
+             tls->excess_renegotiations_callback) {
     /* We got more than one renegotiation requests. The Tor protocol
        needs just one renegotiation; more than that probably means
        They are trying to DoS us and we have to stop them. We can't