diff options
author | iroiro123 <user1@cygwin> | 2015-06-23 01:49:22 +0900 |
---|---|---|
committer | iroiro123 <user1@cygwin> | 2015-06-23 01:49:22 +0900 |
commit | fbb23b5c9fae6e402d84ddae3c3b8c218def366c (patch) | |
tree | 1489789cc85f8a072f9b9d82c7d99ac331c6a2a5 /libmproxy | |
parent | 5c7fa7a594b2179fe5a223c2d8a449f0ca4c629b (diff) | |
download | mitmproxy-fbb23b5c9fae6e402d84ddae3c3b8c218def366c.tar.gz mitmproxy-fbb23b5c9fae6e402d84ddae3c3b8c218def366c.tar.bz2 mitmproxy-fbb23b5c9fae6e402d84ddae3c3b8c218def366c.zip |
changed error handling (ssl spoof mode)
Diffstat (limited to 'libmproxy')
-rw-r--r-- | libmproxy/protocol/http.py | 7 | ||||
-rw-r--r-- | libmproxy/proxy/server.py | 12 |
2 files changed, 10 insertions, 9 deletions
diff --git a/libmproxy/protocol/http.py b/libmproxy/protocol/http.py index 11436b30..9bce7206 100644 --- a/libmproxy/protocol/http.py +++ b/libmproxy/protocol/http.py @@ -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 diff --git a/libmproxy/proxy/server.py b/libmproxy/proxy/server.py index df890f7c..71704413 100644 --- a/libmproxy/proxy/server.py +++ b/libmproxy/proxy/server.py @@ -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( |