diff options
Diffstat (limited to 'libmproxy/protocol/__init__.py')
-rw-r--r-- | libmproxy/protocol/__init__.py | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/libmproxy/protocol/__init__.py b/libmproxy/protocol/__init__.py index da85500b..f23159b2 100644 --- a/libmproxy/protocol/__init__.py +++ b/libmproxy/protocol/__init__.py @@ -28,6 +28,22 @@ class ProtocolHandler(object): """ raise error + +class TemporaryServerChangeMixin(object): + """ + This mixin allows safe modification of the target server, + without any need to expose the ConnectionHandler to the Flow. + """ + + def change_server(self): + self._backup_server = True + raise NotImplementedError + + def restore_server(self): + if not hasattr(self,"_backup_server"): + return + raise NotImplementedError + from . import http, tcp protocols = { |