diff options
Diffstat (limited to 'libmproxy/protocol2/http_proxy.py')
-rw-r--r-- | libmproxy/protocol2/http_proxy.py | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/libmproxy/protocol2/http_proxy.py b/libmproxy/protocol2/http_proxy.py new file mode 100644 index 00000000..6b3b6a82 --- /dev/null +++ b/libmproxy/protocol2/http_proxy.py @@ -0,0 +1,23 @@ +from __future__ import (absolute_import, print_function, division) + +from .layer import Layer, ServerConnectionMixin +from .http import HttpLayer + + +class HttpProxy(Layer): + def __call__(self): + layer = HttpLayer(self) + for message in layer(): + yield message + + +class HttpUpstreamProxy(Layer, ServerConnectionMixin): + def __init__(self, ctx, server_address): + super(HttpUpstreamProxy, self).__init__(ctx) + self.server_address = server_address + + def __call__(self): + layer = HttpLayer(self) + for message in layer(): + if not self._handle_server_message(message): + yield message |