diff options
Diffstat (limited to 'mitmproxy/libmproxy/proxy/modes/http_proxy.py')
-rw-r--r-- | mitmproxy/libmproxy/proxy/modes/http_proxy.py | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/mitmproxy/libmproxy/proxy/modes/http_proxy.py b/mitmproxy/libmproxy/proxy/modes/http_proxy.py new file mode 100644 index 00000000..e19062b9 --- /dev/null +++ b/mitmproxy/libmproxy/proxy/modes/http_proxy.py @@ -0,0 +1,28 @@ +from __future__ import (absolute_import, print_function, division) + +from ...protocol import Layer, ServerConnectionMixin + + +class HttpProxy(Layer, ServerConnectionMixin): + + def __call__(self): + layer = self.ctx.next_layer(self) + try: + layer() + finally: + if self.server_conn: + self.disconnect() + + +class HttpUpstreamProxy(Layer, ServerConnectionMixin): + + def __init__(self, ctx, server_address): + super(HttpUpstreamProxy, self).__init__(ctx, server_address=server_address) + + def __call__(self): + layer = self.ctx.next_layer(self) + try: + layer() + finally: + if self.server_conn: + self.disconnect() |