diff options
author | Maximilian Hils <git@maximilianhils.com> | 2015-08-14 10:41:11 +0200 |
---|---|---|
committer | Maximilian Hils <git@maximilianhils.com> | 2015-08-14 10:41:11 +0200 |
commit | 808218f4bc64be8de065604f6509eb75d98fde88 (patch) | |
tree | ae9320c3153761acb9924a5eb52b8a6162c43448 /libmproxy/protocol2/layer.py | |
parent | aef3b626a70de5f385c8f5496c2e49575b5c3e1c (diff) | |
download | mitmproxy-808218f4bc64be8de065604f6509eb75d98fde88.tar.gz mitmproxy-808218f4bc64be8de065604f6509eb75d98fde88.tar.bz2 mitmproxy-808218f4bc64be8de065604f6509eb75d98fde88.zip |
more work on http layer
Diffstat (limited to 'libmproxy/protocol2/layer.py')
-rw-r--r-- | libmproxy/protocol2/layer.py | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/libmproxy/protocol2/layer.py b/libmproxy/protocol2/layer.py index 0ae64c43..e9f5c667 100644 --- a/libmproxy/protocol2/layer.py +++ b/libmproxy/protocol2/layer.py @@ -16,9 +16,7 @@ Regular proxy, CONNECT request with WebSockets over SSL: Automated protocol detection by peeking into the buffer: TransparentModeLayer - AutoLayer SslLayer - AutoLayer Http2Layer Communication between layers is done as follows: @@ -91,6 +89,13 @@ class Layer(_LayerCodeCompletion): full_msg = "\n".join(full_msg) self.channel.tell("log", Log(full_msg, level)) + @property + def layers(self): + return [self] + self.ctx.layers + + def __repr__(self): + return "%s\r\n %s" % (self.__class__.name__, repr(self.ctx)) + class ServerConnectionMixin(object): """ @@ -133,6 +138,8 @@ class ServerConnectionMixin(object): self.server_conn = None def _connect(self): + if not self.server_address: + raise ProtocolException("Cannot connect to server, no server address given.") self.log("serverconnect", "debug", [repr(self.server_address)]) self.server_conn = ServerConnection(self.server_address) try: |