aboutsummaryrefslogtreecommitdiffstats
path: root/libmproxy/flow.py
diff options
context:
space:
mode:
Diffstat (limited to 'libmproxy/flow.py')
-rw-r--r--libmproxy/flow.py27
1 files changed, 15 insertions, 12 deletions
diff --git a/libmproxy/flow.py b/libmproxy/flow.py
index 59312ceb..4b725ae5 100644
--- a/libmproxy/flow.py
+++ b/libmproxy/flow.py
@@ -158,7 +158,7 @@ class StreamLargeBodies(object):
def run(self, flow, is_request):
r = flow.request if is_request else flow.response
code = flow.response.code if flow.response else None
- expected_size = netlib.http.expected_http_body_size(
+ expected_size = netlib.http.http1.HTTP1Protocol.expected_http_body_size(
r.headers, is_request, flow.request.method, code
)
if not (0 <= expected_size <= self.max_size):
@@ -663,9 +663,12 @@ class FlowMaster(controller.Master):
for s in self.scripts[:]:
self.unload_script(s)
- def unload_script(self, script):
- script.unload()
- self.scripts.remove(script)
+ def unload_script(self, script_obj):
+ try:
+ script_obj.unload()
+ except script.ScriptError as e:
+ self.add_event("Script error:\n" + str(e), "error")
+ self.scripts.remove(script_obj)
def load_script(self, command):
"""
@@ -678,16 +681,16 @@ class FlowMaster(controller.Master):
return v.args[0]
self.scripts.append(s)
- def run_single_script_hook(self, script, name, *args, **kwargs):
- if script and not self.pause_scripts:
- ret = script.run(name, *args, **kwargs)
- if not ret[0] and ret[1]:
- e = "Script error:\n" + ret[1][1]
- self.add_event(e, "error")
+ def _run_single_script_hook(self, script_obj, name, *args, **kwargs):
+ if script_obj and not self.pause_scripts:
+ try:
+ script_obj.run(name, *args, **kwargs)
+ except script.ScriptError as e:
+ self.add_event("Script error:\n" + str(e), "error")
def run_script_hook(self, name, *args, **kwargs):
- for script in self.scripts:
- self.run_single_script_hook(script, name, *args, **kwargs)
+ for script_obj in self.scripts:
+ self._run_single_script_hook(script_obj, name, *args, **kwargs)
def get_ignore_filter(self):
return self.server.config.check_ignore.patterns