Browse Source

test: read proper inspector message size

Fix a bug when messages bigger than 64kb where incorrectly parsed by
the inspector-helper.

PR-URL: https://github.com/nodejs/node/pull/14596
Fixes: https://github.com/nodejs/node/issues/14507
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Eugene Ostroukhov <eostroukhov@google.com>
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
v6
Bartosz Sosnowski 7 years ago
committed by Rich Trott
parent
commit
2dc09f656b
  1. 4
      test/inspector/inspector-helper.js

4
test/inspector/inspector-helper.js

@ -53,6 +53,7 @@ function sendEnd(socket) {
}
function parseWSFrame(buffer, handler) {
// Protocol described in https://tools.ietf.org/html/rfc6455#section-5
if (buffer.length < 2)
return 0;
if (buffer[0] === 0x88 && buffer[1] === 0x00) {
@ -68,7 +69,8 @@ function parseWSFrame(buffer, handler) {
dataLen = buffer.readUInt16BE(2);
bodyOffset = 4;
} else if (dataLen === 127) {
dataLen = buffer.readUInt32BE(2);
assert(buffer[2] === 0 && buffer[3] === 0, 'Inspector message too big');
dataLen = buffer.readUIntBE(4, 6);
bodyOffset = 10;
}
if (buffer.length < bodyOffset + dataLen)

Loading…
Cancel
Save