Commit 3974a677 authored by Julien Fontanet's avatar Julien Fontanet

feat: sync errors for better stacktraces

parent a0420a0c
......@@ -4,7 +4,7 @@ var bigint = require('./bigint');
var defaults = {
successCode: 'STATUS_SUCCESS',
parse: function(connection, cb) {
parse: function(connection, cb, error) {
var self = this;
return function(response) {
......@@ -14,7 +14,7 @@ var defaults = {
self.onSuccess && self.onSuccess(connection, response);
cb && cb(null, self.parseResponse && self.parseResponse(response));
} else {
var error = new Error(MsErref.getErrorMessage(err));
error.message = MsErref.getErrorMessage(err);
error.code = err.code;
cb && cb(error);
}
......
......@@ -14,13 +14,20 @@ var SMB2Forge = (module.exports = {});
SMB2Forge.request = function(messageName, params, connection, cb) {
var msg = require('../messages/' + messageName);
var smbMessage = msg.generate(connection, params);
// send
sendNetBiosMessage(connection, smbMessage);
// create an error container synchroneously for better stacktraces
var error = new Error();
error.messageName = messageName;
error.params = params;
// wait for the response
getResponse(
connection,
smbMessage.getHeaders().MessageId,
msg.parse(connection, cb)
msg.parse(connection, cb, error)
);
};
......
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