Merge pull request #27 from qasimakhan/master

Patch for Malformed PDU with cmdLength 0. Issue #25.
This commit is contained in:
2018-06-13 10:46:36 +02:00
committed by GitHub
+10
View File
@@ -641,6 +641,16 @@ function session(sock) {
while (returnObj.dataQueue.length > 4) {
const cmdLength = parseInt(returnObj.dataQueue.readUInt32BE(0)); // Get this commands length
// Malformed PDU with command length 0
if (cmdLength <= 0) {
// Since PDU is Malformed we need to discard buffer.
log.silly(thisLogPrefix + 'Malformed PDU with 0 Length. Discarding buffer.');
returnObj.dataQueue = returnObj.dataQueue.slice(0, returnObj.dataQueue.length);
// Since PDU is malformed we need to close socket since we cannot trust data from now on.
returnObj.closeSocket();
}
let pdu;
log.silly(thisLogPrefix + 'Processing ' + cmdLength + ' bytes of data');