Commit 36ec5866 authored by Julien Fontanet's avatar Julien Fontanet

chore(lint): add eslint-plugin-node

And fix `new Buffer()` uses.
parent ce47dac9
......@@ -2,13 +2,14 @@ module.exports = {
env: {
node: true,
},
extends: 'eslint:recommended',
extends: ['eslint:recommended', 'plugin:node/recommended'],
globals: {
Promise: true,
},
parserOptions: {
ecmaVersion: 5,
},
plugins: ['node'],
rules: {
indent: 'off',
'linebreak-style': ['error', 'unix'],
......
......@@ -36,7 +36,7 @@ module.exports = function readFile(filename, options, cb) {
for (var i = 0; i < file.EndofFile.length; i++) {
fileLength += file.EndofFile[i] * Math.pow(2, i * 8);
}
var result = new Buffer(fileLength);
var result = Buffer.allocUnsafe(fileLength);
// callback manager
var callback = function(offset) {
return function(err, content) {
......
......@@ -59,7 +59,7 @@ function rename_(connection, file, newPath, cb) {
}
function renameBuffer(newPath) {
var filename = new Buffer(newPath, 'ucs2');
var filename = Buffer.from(newPath, 'ucs2');
return Buffer.concat([
// ReplaceIfExists 1 byte
......
......@@ -29,7 +29,7 @@ module.exports = function writeFile(filename, data, options, cb) {
file,
fileContent = Buffer.isBuffer(data)
? data
: new Buffer(data, options.encoding),
: Buffer.from(data, options.encoding),
fileLength = new bigint(8, fileContent.length);
function createFile(fileCreated) {
......
......@@ -4,7 +4,7 @@ var FILE_OVERWRITE_IF = require('../structures/constants').FILE_OVERWRITE_IF;
module.exports = message({
generate: function(connection, params) {
var buffer = new Buffer(params.path, 'ucs2');
var buffer = Buffer.from(params.path, 'ucs2');
var createDisposition = params.createDisposition;
/* See: https://msdn.microsoft.com/en-us/library/cc246502.aspx
......
......@@ -4,7 +4,7 @@ var constants = require('../structures/constants');
module.exports = message({
generate: function(connection, params) {
var buffer = new Buffer(params.path, 'ucs2');
var buffer = Buffer.from(params.path, 'ucs2');
return new SMB2Message({
headers: {
......
......@@ -3,7 +3,7 @@ var SMB2Message = require('../tools/smb2-message'),
module.exports = message({
generate: function(connection, params) {
var buffer = new Buffer(params.path, 'ucs2');
var buffer = Buffer.from(params.path, 'ucs2');
return new SMB2Message({
headers: {
......
......@@ -4,7 +4,7 @@ var constants = require('../structures/constants');
module.exports = message({
generate: function(connection, params) {
var buffer = new Buffer(params.path, 'ucs2');
var buffer = Buffer.from(params.path, 'ucs2');
return new SMB2Message({
headers: {
......
......@@ -12,7 +12,7 @@ module.exports = message({
},
request: {
FileId: params.FileId,
Buffer: new Buffer('*', 'ucs2'),
Buffer: Buffer.from('*', 'ucs2'),
},
});
},
......
......@@ -10,7 +10,7 @@ module.exports = message({
ProcessId: connection.ProcessId,
},
request: {
Buffer: new Buffer(connection.fullPath, 'ucs2'),
Buffer: Buffer.from(connection.fullPath, 'ucs2'),
},
});
},
......
......@@ -60,7 +60,7 @@ var SMB = (module.exports = function(opt) {
// set the process id
// https://msdn.microsoft.com/en-us/library/ff470100.aspx
this.ProcessId = new Buffer([
this.ProcessId = Buffer.from([
Math.floor(Math.random() * 256) & 0xff,
Math.floor(Math.random() * 256) & 0xff,
Math.floor(Math.random() * 256) & 0xff,
......
......@@ -7,7 +7,7 @@ module.exports = {
['Capabilities', 4, 0],
['ClientGuid', 16, 0],
['ClientStartTime', 8, 0],
['Dialects', 4, new Buffer([0x02, 0x02, 0x10, 0x02])],
['Dialects', 4, Buffer.from([0x02, 0x02, 0x10, 0x02])],
],
response: [
......
var BigInt = (module.exports = function(n, v) {
if (BigInt.isBigInt(n)) {
this.buffer = new Buffer(n.buffer.length);
this.buffer = Buffer.allocUnsafe(n.buffer.length);
n.buffer.copy(this.buffer, 0);
this.sign = n.sign;
} else {
this.buffer = new Buffer(n);
this.buffer.fill(0);
this.buffer = Buffer.alloc(n);
this.sign = 1;
v = v || 0;
......@@ -143,7 +142,7 @@ BigInt.prototype.toBuffer = function() {
};
BigInt.prototype.toNumber = function() {
var b = new Buffer(this.buffer.length);
var b = Buffer.allocUnsafe(this.buffer.length);
for (var i = 0; i < this.buffer.length; i++) {
b.writeUInt8(this.buffer.readUInt8(this.buffer.length - i - 1), i);
......
......@@ -30,7 +30,7 @@ SMB2Forge.request = function(messageName, params, connection, cb) {
SMB2Forge.response = function(c) {
c.responses = {};
c.responsesCB = {};
c.responseBuffer = new Buffer(0);
c.responseBuffer = Buffer.allocUnsafe(0);
return function(response) {
// concat new response
c.responseBuffer = Buffer.concat([c.responseBuffer, response]);
......@@ -86,7 +86,7 @@ function sendNetBiosMessage(connection, message) {
}
// create NetBios package
var buffer = new Buffer(smbRequest.length + 4);
var buffer = Buffer.allocUnsafe(smbRequest.length + 4);
// write NetBios cmd
buffer.writeUInt8(0x00, 0);
......@@ -106,7 +106,7 @@ function sendNetBiosMessage(connection, message) {
}
function getResponse(c, mId, cb) {
var messageId = new Buffer(4);
var messageId = Buffer.allocUnsafe(4);
messageId.writeUInt32LE(mId, 0);
messageId = messageId.toString('hex');
if (c.responses[messageId]) {
......
/*
* CONSTANTS
*/
var protocolId = new Buffer([
var protocolId = Buffer.from([
0xfe,
'S'.charCodeAt(0),
'M'.charCodeAt(0),
......@@ -119,7 +119,7 @@ proto.getResponse = function() {
};
proto.getBuffer = function(connection) {
var buffer = new Buffer(0xffff),
var buffer = Buffer.allocUnsafe(0xffff),
length = 0;
// SET MESSAGE ID
......@@ -135,7 +135,7 @@ proto.getBuffer = function(connection) {
length += writeRequest(this, buffer, headerLength);
// extract the data
var output = new Buffer(length);
var output = Buffer.allocUnsafe(length);
buffer.copy(output, 0, 0, length);
return output;
};
......@@ -159,11 +159,11 @@ function dataToBuffer(data, length) {
// string to buffer
if (typeof data == 'string') {
return new Buffer(data);
return Buffer.from(data);
}
// raw data to buffer
var result = new Buffer(length);
var result = Buffer.allocUnsafe(length);
for (var i = 0; i < length; i++) {
result.writeUInt8(0xff & (data >> (i * 8)), i);
}
......@@ -268,7 +268,7 @@ function readResponse(message, buffer, offset) {
function writeRequest(message, buffer, offset) {
var initOffset = offset,
needsRewrite = false,
tmpBuffer = new Buffer(buffer.length);
tmpBuffer = Buffer.allocUnsafe(buffer.length);
offset = 0;
for (var i in message.structure.request) {
var key = message.structure.request[i][0],
......
......@@ -889,6 +889,55 @@
}
}
},
"eslint-plugin-es": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-1.3.1.tgz",
"integrity": "sha512-9XcVyZiQRVeFjqHw8qHNDAZcQLqaHlOGGpeYqzYh8S4JYCWTCO3yzyen8yVmA5PratfzTRWDwCOFphtDEG+w/w==",
"dev": true,
"requires": {
"eslint-utils": "^1.3.0",
"regexpp": "^2.0.0"
},
"dependencies": {
"regexpp": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.0.tgz",
"integrity": "sha512-g2FAVtR8Uh8GO1Nv5wpxW7VFVwHcCEr4wyA8/MHiRkO8uHoR5ntAA8Uq3P1vvMTX/BeQiRVSpDGLd+Wn5HNOTA==",
"dev": true
}
}
},
"eslint-plugin-node": {
"version": "7.0.1",
"resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-7.0.1.tgz",
"integrity": "sha512-lfVw3TEqThwq0j2Ba/Ckn2ABdwmL5dkOgAux1rvOk6CO7A6yGyPI2+zIxN6FyNkp1X1X/BSvKOceD6mBWSj4Yw==",
"dev": true,
"requires": {
"eslint-plugin-es": "^1.3.1",
"eslint-utils": "^1.3.1",
"ignore": "^4.0.2",
"minimatch": "^3.0.4",
"resolve": "^1.8.1",
"semver": "^5.5.0"
},
"dependencies": {
"ignore": {
"version": "4.0.3",
"resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.3.tgz",
"integrity": "sha512-Z/vAH2GGIEATQnBVXMclE2IGV6i0GyVngKThcGZ5kHgHMxLo9Ow2+XHRq1aEKEej5vOF1TPJNbvX6J/anT0M7A==",
"dev": true
},
"minimatch": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
"integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
"dev": true,
"requires": {
"brace-expansion": "^1.1.7"
}
}
}
},
"eslint-scope": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.0.tgz",
......@@ -1137,14 +1186,12 @@
"balanced-match": {
"version": "1.0.0",
"bundled": true,
"dev": true,
"optional": true
"dev": true
},
"brace-expansion": {
"version": "1.1.11",
"bundled": true,
"dev": true,
"optional": true,
"requires": {
"balanced-match": "^1.0.0",
"concat-map": "0.0.1"
......@@ -1159,20 +1206,17 @@
"code-point-at": {
"version": "1.1.0",
"bundled": true,
"dev": true,
"optional": true
"dev": true
},
"concat-map": {
"version": "0.0.1",
"bundled": true,
"dev": true,
"optional": true
"dev": true
},
"console-control-strings": {
"version": "1.1.0",
"bundled": true,
"dev": true,
"optional": true
"dev": true
},
"core-util-is": {
"version": "1.0.2",
......@@ -1289,8 +1333,7 @@
"inherits": {
"version": "2.0.3",
"bundled": true,
"dev": true,
"optional": true
"dev": true
},
"ini": {
"version": "1.3.5",
......@@ -1302,7 +1345,6 @@
"version": "1.0.0",
"bundled": true,
"dev": true,
"optional": true,
"requires": {
"number-is-nan": "^1.0.0"
}
......@@ -1317,7 +1359,6 @@
"version": "3.0.4",
"bundled": true,
"dev": true,
"optional": true,
"requires": {
"brace-expansion": "^1.1.7"
}
......@@ -1325,14 +1366,12 @@
"minimist": {
"version": "0.0.8",
"bundled": true,
"dev": true,
"optional": true
"dev": true
},
"minipass": {
"version": "2.2.4",
"bundled": true,
"dev": true,
"optional": true,
"requires": {
"safe-buffer": "^5.1.1",
"yallist": "^3.0.0"
......@@ -1351,7 +1390,6 @@
"version": "0.5.1",
"bundled": true,
"dev": true,
"optional": true,
"requires": {
"minimist": "0.0.8"
}
......@@ -1432,8 +1470,7 @@
"number-is-nan": {
"version": "1.0.1",
"bundled": true,
"dev": true,
"optional": true
"dev": true
},
"object-assign": {
"version": "4.1.1",
......@@ -1445,7 +1482,6 @@
"version": "1.4.0",
"bundled": true,
"dev": true,
"optional": true,
"requires": {
"wrappy": "1"
}
......@@ -1567,7 +1603,6 @@
"version": "1.0.2",
"bundled": true,
"dev": true,
"optional": true,
"requires": {
"code-point-at": "^1.0.0",
"is-fullwidth-code-point": "^1.0.0",
......
......@@ -4,7 +4,7 @@
"homepage": "https://github.com/marsaud/node-smb2",
"version": "0.8.0",
"engines": {
"node": ">=4"
"node": ">=5.10"
},
"author": {
"name": "Benjamin Chelli",
......@@ -40,6 +40,7 @@
"devDependencies": {
"babel": "^5.8.34",
"eslint": "^5.0.1",
"eslint-plugin-node": "^7.0.1",
"prettier": "^1.13.7",
"source-map-support": "^0.4.0"
},
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment