Fix bug that caused mis-identification of some HTTPS connections in transparent mode.

This commit is contained in:
Aldo Cortesi 2013-03-17 14:35:36 +13:00
parent 87f76bb62b
commit 790ad468e4
1 changed files with 11 additions and 10 deletions

View File

@ -323,8 +323,9 @@ class ProxyHandler(tcp.BaseHandler):
if not orig: if not orig:
raise ProxyError(502, "Transparent mode failure: could not resolve original destination.") raise ProxyError(502, "Transparent mode failure: could not resolve original destination.")
host, port = orig host, port = orig
if not self.ssl_established and (port in self.config.transparent_proxy["sslports"]): if port in self.config.transparent_proxy["sslports"]:
scheme = "https" scheme = "https"
if not self.ssl_established:
dummycert = self.find_cert(client_conn, host, port, host) dummycert = self.find_cert(client_conn, host, port, host)
sni = HandleSNI( sni = HandleSNI(
self, client_conn, host, port, self, client_conn, host, port,