diff options
| author | Aldo Cortesi <aldo@nullcube.com> | 2016-07-14 11:24:06 +1200 |
|---|---|---|
| committer | Aldo Cortesi <aldo@nullcube.com> | 2016-07-14 11:24:06 +1200 |
| commit | 143bf0dfa9138a4340287d636bb68648665b3829 (patch) | |
| tree | 836dd5e79ed38b638a919133cbe95e61b52a2736 /mitmproxy | |
| parent | 6e7b86cd82dd9b379b0a57d423bbdcd74ba47256 (diff) | |
| download | mitmproxy-143bf0dfa9138a4340287d636bb68648665b3829.tar.gz mitmproxy-143bf0dfa9138a4340287d636bb68648665b3829.tar.bz2 mitmproxy-143bf0dfa9138a4340287d636bb68648665b3829.zip | |
AntiCache to addon
Diffstat (limited to 'mitmproxy')
| -rw-r--r-- | mitmproxy/builtins/__init__.py | 2 | ||||
| -rw-r--r-- | mitmproxy/builtins/anticache.py | 13 | ||||
| -rw-r--r-- | mitmproxy/console/options.py | 8 | ||||
| -rw-r--r-- | mitmproxy/console/statusbar.py | 2 | ||||
| -rw-r--r-- | mitmproxy/dump.py | 2 | ||||
| -rw-r--r-- | mitmproxy/flow/master.py | 4 |
6 files changed, 20 insertions, 11 deletions
diff --git a/mitmproxy/builtins/__init__.py b/mitmproxy/builtins/__init__.py index 867ebb22..b5419378 100644 --- a/mitmproxy/builtins/__init__.py +++ b/mitmproxy/builtins/__init__.py @@ -1,11 +1,13 @@ from __future__ import absolute_import, print_function, division +from mitmproxy.builtins import anticache from mitmproxy.builtins import anticomp from mitmproxy.builtins import stickyauth def default_addons(): return [ + anticache.AntiCache(), anticomp.AntiComp(), stickyauth.StickyAuth(), ] diff --git a/mitmproxy/builtins/anticache.py b/mitmproxy/builtins/anticache.py new file mode 100644 index 00000000..f208e2fb --- /dev/null +++ b/mitmproxy/builtins/anticache.py @@ -0,0 +1,13 @@ +from __future__ import absolute_import, print_function, division + + +class AntiCache: + def __init__(self): + self.enabled = False + + def configure(self, options): + self.enabled = options.anticache + + def request(self, flow): + if self.enabled: + flow.request.anticache() diff --git a/mitmproxy/console/options.py b/mitmproxy/console/options.py index f6342814..c76a058f 100644 --- a/mitmproxy/console/options.py +++ b/mitmproxy/console/options.py @@ -96,7 +96,7 @@ class Options(urwid.WidgetWrap): select.Option( "Anti-Cache", "a", - lambda: master.anticache, + lambda: master.options.anticache, self.toggle_anticache ), select.Option( @@ -152,7 +152,6 @@ class Options(urwid.WidgetWrap): return super(self.__class__, self).keypress(size, key) def clearall(self): - self.master.anticache = False self.master.killextra = False self.master.showhost = False self.master.refresh_server_playback = True @@ -164,8 +163,9 @@ class Options(urwid.WidgetWrap): self.master.scripts = [] self.master.set_stickycookie(None) - self.master.options.stickyauth = None + self.master.options.anticache = False self.master.options.anticomp = False + self.master.options.stickyauth = None self.master.state.default_body_view = contentviews.get("Auto") @@ -176,7 +176,7 @@ class Options(urwid.WidgetWrap): ) def toggle_anticache(self): - self.master.anticache = not self.master.anticache + self.master.options.anticache = not self.master.options.anticache def toggle_anticomp(self): self.master.options.anticomp = not self.master.options.anticomp diff --git a/mitmproxy/console/statusbar.py b/mitmproxy/console/statusbar.py index d0a24018..1357d7ca 100644 --- a/mitmproxy/console/statusbar.py +++ b/mitmproxy/console/statusbar.py @@ -187,7 +187,7 @@ class StatusBar(urwid.WidgetWrap): r.append(":%s]" % self.master.state.default_body_view.name) opts = [] - if self.master.anticache: + if self.master.options.anticache: opts.append("anticache") if self.master.options.anticomp: opts.append("anticomp") diff --git a/mitmproxy/dump.py b/mitmproxy/dump.py index f69e3777..b953d131 100644 --- a/mitmproxy/dump.py +++ b/mitmproxy/dump.py @@ -63,8 +63,6 @@ class DumpMaster(flow.FlowMaster): self.addons.add(*builtins.default_addons()) self.outfile = outfile self.o = options - self.anticache = options.anticache - self.anticomp = options.anticomp self.showhost = options.showhost self.replay_ignore_params = options.replay_ignore_params self.replay_ignore_content = options.replay_ignore_content diff --git a/mitmproxy/flow/master.py b/mitmproxy/flow/master.py index e469c499..06e1b460 100644 --- a/mitmproxy/flow/master.py +++ b/mitmproxy/flow/master.py @@ -42,7 +42,6 @@ class FlowMaster(controller.Master): self.stickycookie_state = None # type: Optional[modules.StickyCookieState] self.stickycookie_txt = None - self.anticache = False self.stream_large_bodies = None # type: Optional[modules.StreamLargeBodies] self.refresh_server_playback = False self.replacehooks = modules.ReplaceHooks() @@ -313,9 +312,6 @@ class FlowMaster(controller.Master): if self.stickycookie_state: self.stickycookie_state.handle_request(f) - if self.anticache: - f.request.anticache() - if self.server_playback: pb = self.do_server_playback(f) if not pb and self.kill_nonreplay: |
