From c24718f64cdae262c90961b2ccfd3065f2150905 Mon Sep 17 00:00:00 2001 From: deathcap Date: Sat, 30 Jan 2016 14:45:41 -0800 Subject: [PATCH] Recognize legacy ping in splitter. GH-332 --- src/transforms/framing.js | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/transforms/framing.js b/src/transforms/framing.js index a4fb0f7..a447137 100644 --- a/src/transforms/framing.js +++ b/src/transforms/framing.js @@ -30,6 +30,13 @@ class Splitter extends Transform { } _transform(chunk, enc, cb) { this.buffer = Buffer.concat([this.buffer, chunk]); + + if (this.buffer[0] === 0xfe) { + // legacy_server_list_ping packet follows a different protocol format, no varint length + this.push(this.buffer); + return cb(); + } + var offset = 0; var { value, size, error } = readVarInt(this.buffer, offset) || { error: "Not enough data" };