aboutsummaryrefslogtreecommitdiffstats
path: root/mitmproxy/flowfilter.py
diff options
context:
space:
mode:
authorThomas Kriechbaumer <thomas@kriechbaumer.name>2017-12-17 18:13:35 +0100
committerThomas Kriechbaumer <thomas@kriechbaumer.name>2017-12-18 09:19:20 +0100
commit1a7ce384dac5099308b68e629c88e7b81ad44866 (patch)
tree69c97127876a2a4872215016e5f7f14eb658256a /mitmproxy/flowfilter.py
parentb1f923e1482bf95418c955a5867dcbd30e1a00ec (diff)
downloadmitmproxy-1a7ce384dac5099308b68e629c88e7b81ad44866.tar.gz
mitmproxy-1a7ce384dac5099308b68e629c88e7b81ad44866.tar.bz2
mitmproxy-1a7ce384dac5099308b68e629c88e7b81ad44866.zip
websocket: support domain and url filters
Diffstat (limited to 'mitmproxy/flowfilter.py')
-rw-r--r--mitmproxy/flowfilter.py11
1 files changed, 7 insertions, 4 deletions
diff --git a/mitmproxy/flowfilter.py b/mitmproxy/flowfilter.py
index 23e47e2b..12f2bac8 100644
--- a/mitmproxy/flowfilter.py
+++ b/mitmproxy/flowfilter.py
@@ -322,14 +322,15 @@ class FDomain(_Rex):
flags = re.IGNORECASE
is_binary = False
- @only(http.HTTPFlow)
+ @only(http.HTTPFlow, websocket.WebSocketFlow)
def __call__(self, f):
+ if isinstance(f, websocket.WebSocketFlow):
+ f = f.handshake_flow
return bool(
self.re.search(f.request.host) or
self.re.search(f.request.pretty_host)
)
-
class FUrl(_Rex):
code = "u"
help = "URL"
@@ -342,9 +343,11 @@ class FUrl(_Rex):
toks = toks[1:]
return klass(*toks)
- @only(http.HTTPFlow)
+ @only(http.HTTPFlow, websocket.WebSocketFlow)
def __call__(self, f):
- if not f.request:
+ if isinstance(f, websocket.WebSocketFlow):
+ f = f.handshake_flow
+ if not f or not f.request:
return False
return self.re.search(f.request.pretty_url)