aboutsummaryrefslogtreecommitdiffstats
path: root/libpathod/language.py
diff options
context:
space:
mode:
authorAldo Cortesi <aldo@nullcube.com>2015-04-30 08:03:26 +1200
committerAldo Cortesi <aldo@nullcube.com>2015-04-30 08:03:26 +1200
commitf927701e74a3b6a22694a0d55e918febbeca9e98 (patch)
tree7796b5cdc97cbded0a5e2e924d41d08b79851e61 /libpathod/language.py
parent7e69fab331297f08ce066667ebd8a2daefce6747 (diff)
downloadmitmproxy-f927701e74a3b6a22694a0d55e918febbeca9e98.tar.gz
mitmproxy-f927701e74a3b6a22694a0d55e918febbeca9e98.tar.bz2
mitmproxy-f927701e74a3b6a22694a0d55e918febbeca9e98.zip
Websocket frame read limit.
Diffstat (limited to 'libpathod/language.py')
-rw-r--r--libpathod/language.py13
1 files changed, 10 insertions, 3 deletions
diff --git a/libpathod/language.py b/libpathod/language.py
index d4c5b880..0fd418a5 100644
--- a/libpathod/language.py
+++ b/libpathod/language.py
@@ -1172,9 +1172,16 @@ class WebsocketFrame(_Message):
return resp
def values(self, settings):
- vals = [
- websockets.FrameHeader().to_bytes()
- ]
+ vals = []
+ if self.body:
+ length = len(self.body.value.get_generator(settings))
+ else:
+ length = 0
+ frame = websockets.FrameHeader(
+ mask = True,
+ payload_length = length
+ )
+ vals = [frame.to_bytes()]
if self.body:
vals.append(self.body.value.get_generator(settings))
return vals