changed error handling (ssl spoof mode)

This commit is contained in:
iroiro123
2015-06-23 01:49:22 +09:00
parent 5c7fa7a594
commit fbb23b5c9f
3 changed files with 12 additions and 16 deletions

View File

@@ -1347,7 +1347,12 @@ class HTTPHandler(ProtocolHandler):
if self.c.config.mode == "sslspoof":
# SNI is processed in server.py
return None
if not (flow.server_conn and flow.server_conn.ssl_established):
print ":::::::::::::::"
raise http.HttpError(
400,
"Invalid request: No host information"
)
return None

View File

@@ -123,14 +123,10 @@ class ConnectionHandler:
self.set_server_address(("-", port))
self.establish_ssl(client=True)
host = self.client_conn.connection.get_servername()
if host is None:
raise ProxyError(
400,
"Invalid request: No host information"
)
self.set_server_address((host, port))
self.establish_server_connection()
self.establish_ssl(server=True, sni=host)
if host:
self.set_server_address((host, port))
self.establish_server_connection()
self.establish_ssl(server=True, sni=host)
# Delegate handling to the protocol handler
protocol_handler(