Commit 2307e97c authored by HamadaBrest's avatar HamadaBrest Committed by Julien Fontanet

chore(DesiredAccess): use constants instead of magic numbers (#44)

parent 92b5ca99
var SMB2Message = require('../tools/smb2-message'); var SMB2Message = require('../tools/smb2-message');
var message = require('../tools/message'); var message = require('../tools/message');
var FILE_OVERWRITE_IF = require('../structures/constants').FILE_OVERWRITE_IF; var constants = require('../structures/constants');
const desiredAccess =
constants.DELETE |
constants.FILE_APPEND_DATA |
constants.FILE_DELETE_CHILD |
constants.FILE_READ_ATTRIBUTES |
constants.FILE_READ_DATA |
constants.FILE_READ_EA |
constants.FILE_WRITE_ATTRIBUTES |
constants.FILE_WRITE_DATA |
constants.FILE_WRITE_EA |
constants.READ_CONTROL |
constants.SYNCHRONIZE |
constants.WRITE_DAC;
module.exports = message({ module.exports = message({
generate: function(connection, params) { generate: function(connection, params) {
...@@ -10,7 +24,7 @@ module.exports = message({ ...@@ -10,7 +24,7 @@ module.exports = message({
/* See: https://msdn.microsoft.com/en-us/library/cc246502.aspx /* See: https://msdn.microsoft.com/en-us/library/cc246502.aspx
6 values for CreateDisposition. */ 6 values for CreateDisposition. */
if (!(createDisposition >= 0 && createDisposition <= 5)) { if (!(createDisposition >= 0 && createDisposition <= 5)) {
createDisposition = FILE_OVERWRITE_IF; createDisposition = constants.FILE_OVERWRITE_IF;
} }
return new SMB2Message({ return new SMB2Message({
...@@ -22,7 +36,7 @@ module.exports = message({ ...@@ -22,7 +36,7 @@ module.exports = message({
}, },
request: { request: {
Buffer: buffer, Buffer: buffer,
DesiredAccess: 0x001701df, DesiredAccess: desiredAccess,
FileAttributes: 0x00000080, FileAttributes: 0x00000080,
ShareAccess: 0x00000000, ShareAccess: 0x00000000,
CreateDisposition: createDisposition, CreateDisposition: createDisposition,
......
...@@ -2,6 +2,20 @@ var SMB2Message = require('../tools/smb2-message'); ...@@ -2,6 +2,20 @@ var SMB2Message = require('../tools/smb2-message');
var message = require('../tools/message'); var message = require('../tools/message');
var constants = require('../structures/constants'); var constants = require('../structures/constants');
const desiredAccess =
constants.DELETE |
constants.FILE_APPEND_DATA |
constants.FILE_DELETE_CHILD |
constants.FILE_READ_ATTRIBUTES |
constants.FILE_READ_DATA |
constants.FILE_READ_EA |
constants.FILE_WRITE_ATTRIBUTES |
constants.FILE_WRITE_DATA |
constants.FILE_WRITE_EA |
constants.READ_CONTROL |
constants.SYNCHRONIZE |
constants.WRITE_DAC;
module.exports = message({ module.exports = message({
generate: function(connection, params) { generate: function(connection, params) {
var buffer = Buffer.from(params.path, 'ucs2'); var buffer = Buffer.from(params.path, 'ucs2');
...@@ -15,7 +29,7 @@ module.exports = message({ ...@@ -15,7 +29,7 @@ module.exports = message({
}, },
request: { request: {
Buffer: buffer, Buffer: buffer,
DesiredAccess: 0x001701df, DesiredAccess: desiredAccess,
FileAttributes: 0x00000000, FileAttributes: 0x00000000,
ShareAccess: 0x00000000, ShareAccess: 0x00000000,
CreateDisposition: constants.FILE_CREATE, CreateDisposition: constants.FILE_CREATE,
......
...@@ -2,6 +2,20 @@ var SMB2Message = require('../tools/smb2-message'); ...@@ -2,6 +2,20 @@ var SMB2Message = require('../tools/smb2-message');
var message = require('../tools/message'); var message = require('../tools/message');
var constants = require('../structures/constants'); var constants = require('../structures/constants');
const desiredAccess =
constants.DELETE |
constants.FILE_APPEND_DATA |
constants.FILE_DELETE_CHILD |
constants.FILE_READ_ATTRIBUTES |
constants.FILE_READ_DATA |
constants.FILE_READ_EA |
constants.FILE_WRITE_ATTRIBUTES |
constants.FILE_WRITE_DATA |
constants.FILE_WRITE_EA |
constants.READ_CONTROL |
constants.SYNCHRONIZE |
constants.WRITE_DAC;
module.exports = message({ module.exports = message({
generate: function(connection, params) { generate: function(connection, params) {
var buffer = Buffer.from(params.path, 'ucs2'); var buffer = Buffer.from(params.path, 'ucs2');
...@@ -15,7 +29,7 @@ module.exports = message({ ...@@ -15,7 +29,7 @@ module.exports = message({
}, },
request: { request: {
Buffer: buffer, Buffer: buffer,
DesiredAccess: 0x001701df, DesiredAccess: desiredAccess,
FileAttributes: 0x00000000, FileAttributes: 0x00000000,
ShareAccess: 0x00000007, ShareAccess: 0x00000007,
CreateDisposition: constants.FILE_OPEN, CreateDisposition: constants.FILE_OPEN,
......
...@@ -18,5 +18,16 @@ module.exports = { ...@@ -18,5 +18,16 @@ module.exports = {
* 2.2.13.1.1 SMB2 File_Pipe_Printer_Access_Mask * 2.2.13.1.1 SMB2 File_Pipe_Printer_Access_Mask
* https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-smb2/77b36d0f-6016-458a-a7a0-0f4a72ae1534 * https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-smb2/77b36d0f-6016-458a-a7a0-0f4a72ae1534
*/ */
DELETE: 0x00010000,
FILE_APPEND_DATA: 0x00000004,
FILE_DELETE_CHILD: 0x00000040,
FILE_READ_ATTRIBUTES: 0x00000080,
FILE_READ_DATA: 0x00000001,
FILE_READ_EA: 0x00000008,
FILE_WRITE_ATTRIBUTES: 0x00000100,
FILE_WRITE_DATA: 0x00000002, FILE_WRITE_DATA: 0x00000002,
FILE_WRITE_EA: 0x00000010,
READ_CONTROL: 0x00020000,
SYNCHRONIZE: 0x00100000,
WRITE_DAC: 0x00040000,
}; };
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