Merge pull request #27 from qasimakhan/master
Patch for Malformed PDU with cmdLength 0. Issue #25.
This commit is contained in:
@@ -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');
|
||||
|
||||
Reference in New Issue
Block a user