From 499262f752b81b2cb110721fee82654d1baf27da Mon Sep 17 00:00:00 2001 From: Benjamin Sergeant Date: Sat, 26 Oct 2019 11:48:03 -0700 Subject: [PATCH] check max frame size --- ixwebsocket/IXWebSocketTransport.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/ixwebsocket/IXWebSocketTransport.cpp b/ixwebsocket/IXWebSocketTransport.cpp index ab54720d..691671f4 100644 --- a/ixwebsocket/IXWebSocketTransport.cpp +++ b/ixwebsocket/IXWebSocketTransport.cpp @@ -542,6 +542,13 @@ namespace ix ws.masking_key[3] = 0; } + // Prevent integer overflow in the next conditional + const uint64_t maxFrameSize(1 << 63); + if (ws.N > maxFrameSize) + { + return; + } + if (_rxbuf.size() < ws.header_size + ws.N) { return; /* Need: ws.header_size+ws.N - _rxbuf.size() */