diff --git a/lib/ipset/add.js b/lib/ipset/add.js index e74f525..2c53f52 100644 --- a/lib/ipset/add.js +++ b/lib/ipset/add.js @@ -48,11 +48,11 @@ module.exports = function (options, cb) { */ exec(cmd.concat(args).join(' '), function (error, stdout, stderror) { if (error && cb) { - cb({ - msg : stderror.split('\n')[0], - cmd : cmd.concat(args).join(' '), - code: error.code - }); + var err = new Error(stderror.split('\n')[0]); + err.cmd = cmd.concat(args).join(' '); + err.code = error.code; + + cb(err); } else if (cb) { cb(null); diff --git a/lib/ipset/create.js b/lib/ipset/create.js index f574313..ca9fc7b 100644 --- a/lib/ipset/create.js +++ b/lib/ipset/create.js @@ -48,11 +48,11 @@ module.exports = function (options, cb) { */ exec(cmd.concat(args).join(' '), function (error, stdout, stderror) { if (error && cb) { - cb({ - msg : stderror.split('\n')[0], - cmd : cmd.concat(args).join(' '), - code: error.code - }); + var err = new Error(stderror.split('\n')[0]); + err.cmd = cmd.concat(args).join(' '); + err.code = error.code; + + cb(err); } else if (cb) { cb(null); diff --git a/lib/ipset/del.js b/lib/ipset/del.js index e52c47d..f1bfa39 100644 --- a/lib/ipset/del.js +++ b/lib/ipset/del.js @@ -48,11 +48,11 @@ module.exports = function (options, cb) { */ exec(cmd.concat(args).join(' '), function (error, stdout, stderror) { if (error && cb) { - cb({ - msg : stderror.split('\n')[0], - cmd : cmd.concat(args).join(' '), - code: error.code - }); + var err = new Error(stderror.split('\n')[0]); + err.cmd = cmd.concat(args).join(' '); + err.code = error.code; + + cb(err); } else if (cb) { cb(null); diff --git a/lib/ipset/destroy.js b/lib/ipset/destroy.js index 17254ba..6e34d29 100644 --- a/lib/ipset/destroy.js +++ b/lib/ipset/destroy.js @@ -46,11 +46,11 @@ module.exports = function (/* options?, cb */) { */ exec(cmd.concat(args).join(' '), function (error, stdout, stderror) { if (error && cb) { - cb({ - msg : stderror.split('\n')[0], - cmd : cmd.concat(args).join(' '), - code: error.code - }); + var err = new Error(stderror.split('\n')[0]); + err.cmd = cmd.concat(args).join(' '); + err.code = error.code; + + cb(err); } else if (cb) { cb(null); diff --git a/lib/ipset/flush.js b/lib/ipset/flush.js index 1a9e7a2..b9121a3 100644 --- a/lib/ipset/flush.js +++ b/lib/ipset/flush.js @@ -46,11 +46,11 @@ module.exports = function (/* options?, cb */) { */ exec(cmd.concat(args).join(' '), function (error, stdout, stderror) { if (error && cb) { - cb({ - msg : stderror.split('\n')[0], - cmd : cmd.concat(args).join(' '), - code: error.code - }); + var err = new Error(stderror.split('\n')[0]); + err.cmd = cmd.concat(args).join(' '); + err.code = error.code; + + cb(err); } else if (cb) { cb(null); diff --git a/lib/ipset/rename.js b/lib/ipset/rename.js index f49a1b4..8baaab7 100644 --- a/lib/ipset/rename.js +++ b/lib/ipset/rename.js @@ -37,11 +37,11 @@ module.exports = function (options, cb) { */ exec(cmd.concat(args).join(' '), function (error, stdout, stderror) { if (error && cb) { - cb({ - msg : stderror.split('\n')[0], - cmd : cmd.concat(args).join(' '), - code: error.code - }); + var err = new Error(stderror.split('\n')[0]); + err.cmd = cmd.concat(args).join(' '); + err.code = error.code; + + cb(err); } else if (cb) { cb(null); diff --git a/lib/ipset/swap.js b/lib/ipset/swap.js index 01b6bd5..28b6db5 100644 --- a/lib/ipset/swap.js +++ b/lib/ipset/swap.js @@ -37,11 +37,11 @@ module.exports = function (options, cb) { */ exec(cmd.concat(args).join(' '), function (error, stdout, stderror) { if (error && cb) { - cb({ - msg : stderror.split('\n')[0], - cmd : cmd.concat(args).join(' '), - code: error.code - }); + var err = new Error(stderror.split('\n')[0]); + err.cmd = cmd.concat(args).join(' '); + err.code = error.code; + + cb(err); } else if (cb) { cb(null); diff --git a/lib/ipset/test.js b/lib/ipset/test.js index 296250c..f31f9ba 100644 --- a/lib/ipset/test.js +++ b/lib/ipset/test.js @@ -14,7 +14,7 @@ module.exports = function (options, cb) { var ipset_cmd = (options.sudo) ? 'sudo' : ''; - + /* * Build cmd to execute. */ @@ -48,11 +48,11 @@ module.exports = function (options, cb) { */ exec(cmd.concat(args).join(' '), function (error, stdout, stderror) { if (error && cb) { - cb({ - msg : stderror.split('\n')[0], - cmd : cmd.concat(args).join(' '), - code: error.code - }, error.code); + var err = new Error(stderror.split('\n')[0]); + err.cmd = cmd.concat(args).join(' '); + err.code = error.code; + + cb(err, error.code); } else if (cb) { cb(null, 0); diff --git a/lib/ipset/version.js b/lib/ipset/version.js index 020b0d1..3627916 100644 --- a/lib/ipset/version.js +++ b/lib/ipset/version.js @@ -24,11 +24,11 @@ module.exports = function (cb) { */ exec(cmd.join(' '), function (error, stdout, stderror) { if (error && cb) { - cb({ - msg : stderror.split('\n')[0], - cmd : cmd.concat(args).join(' '), - code: error.code - }); + var err = new Error(stderror.split('\n')[0]); + err.cmd = cmd.concat(args).join(' '); + err.code = error.code; + + cb(err); } else if (cb) { cb(null, stdout.split('\n')[0]); diff --git a/lib/iptables/append.js b/lib/iptables/append.js index badf8ad..9f0204a 100644 --- a/lib/iptables/append.js +++ b/lib/iptables/append.js @@ -48,11 +48,11 @@ module.exports = function (options, cb) { */ exec(cmd.concat(args).join(' '), function (error, stdout, stderror) { if (error && cb) { - cb({ - msg : stderror.split('\n')[0], - cmd : cmd.concat(args).join(' '), - code: error.code - }); + var err = new Error(stderror.split('\n')[0]); + err.cmd = cmd.concat(args).join(' '); + err.code = error.code; + + cb(err); } else if (cb) { cb(null); diff --git a/lib/iptables/delete.js b/lib/iptables/delete.js index c1d77eb..1dfb4c2 100644 --- a/lib/iptables/delete.js +++ b/lib/iptables/delete.js @@ -53,11 +53,11 @@ module.exports = function (options, cb) { */ exec(cmd.concat(args).join(' '), function (error, stdout, stderror) { if (error && cb) { - cb({ - msg : stderror.split('\n')[0], - cmd : cmd.concat(args).join(' '), - code: error.code - }); + var err = new Error(stderror.split('\n')[0]); + err.cmd = cmd.concat(args).join(' '); + err.code = error.code; + + cb(err); } else if (cb) { cb(null); diff --git a/lib/iptables/delete_chain.js b/lib/iptables/delete_chain.js index 1e29470..f187da3 100644 --- a/lib/iptables/delete_chain.js +++ b/lib/iptables/delete_chain.js @@ -56,11 +56,11 @@ module.exports = function (/* options?, cb */) { */ exec(cmd.concat(args).join(' '), function (error, stdout, stderror) { if (error && cb) { - cb({ - msg : stderror.split('\n')[0], - cmd : cmd.concat(args).join(' '), - code: error.code - }); + var err = new Error(stderror.split('\n')[0]); + err.cmd = cmd.concat(args).join(' '); + err.code = error.code; + + cb(err); } else if (cb) { cb(null); diff --git a/lib/iptables/flush.js b/lib/iptables/flush.js index 395aeb3..6147cfc 100644 --- a/lib/iptables/flush.js +++ b/lib/iptables/flush.js @@ -56,11 +56,11 @@ module.exports = function (/* options?, cb */) { */ exec(cmd.concat(args).join(' '), function (error, stdout, stderror) { if (error && cb) { - cb({ - msg : stderror.split('\n')[0], - cmd : cmd.concat(args).join(' '), - code: error.code - }); + var err = new Error(stderror.split('\n')[0]); + err.cmd = cmd.concat(args).join(' '); + err.code = error.code; + + cb(err); } else if (cb) { cb(null); diff --git a/lib/iptables/insert.js b/lib/iptables/insert.js index cd7427a..e95fabd 100644 --- a/lib/iptables/insert.js +++ b/lib/iptables/insert.js @@ -53,11 +53,11 @@ module.exports = function (options, cb) { */ exec(cmd.concat(args).join(' '), function (error, stdout, stderror) { if (error && cb) { - cb({ - msg : stderror.split('\n')[0], - cmd : cmd.concat(args).join(' '), - code: error.code - }); + var err = new Error(stderror.split('\n')[0]); + err.cmd = cmd.concat(args).join(' '); + err.code = error.code; + + cb(err); } else if (cb) { cb(null); diff --git a/lib/iptables/new.js b/lib/iptables/new.js index 2fc3087..f598f4c 100644 --- a/lib/iptables/new.js +++ b/lib/iptables/new.js @@ -43,11 +43,11 @@ module.exports = function (options, cb) { */ exec(cmd.concat(args).join(' '), function (error, stdout, stderror) { if (error && cb) { - cb({ - msg : stderror.split('\n')[0], - cmd : cmd.concat(args).join(' '), - code: error.code - }); + var err = new Error(stderror.split('\n')[0]); + err.cmd = cmd.concat(args).join(' '); + err.code = error.code; + + cb(err); } else if (cb) { cb(null); diff --git a/lib/iptables/policy.js b/lib/iptables/policy.js index 70bbb0e..558fbcd 100644 --- a/lib/iptables/policy.js +++ b/lib/iptables/policy.js @@ -47,11 +47,11 @@ module.exports = function (options, cb) { */ exec(cmd.concat(args).join(' '), function (error, stdout, stderror) { if (error && cb) { - cb({ - msg : stderror.split('\n')[0], - cmd : cmd.concat(args).join(' '), - code: error.code - }); + var err = new Error(stderror.split('\n')[0]); + err.cmd = cmd.concat(args).join(' '); + err.code = error.code; + + cb(err); } else if (cb) { cb(null); diff --git a/lib/iptables/rename.js b/lib/iptables/rename.js index fc31219..fdcb5ff 100644 --- a/lib/iptables/rename.js +++ b/lib/iptables/rename.js @@ -47,11 +47,11 @@ module.exports = function (options, cb) { */ exec(cmd.concat(args).join(' '), function (error, stdout, stderror) { if (error && cb) { - cb({ - msg : stderror.split('\n')[0], - cmd : cmd.concat(args).join(' '), - code: error.code - }); + var err = new Error(stderror.split('\n')[0]); + err.cmd = cmd.concat(args).join(' '); + err.code = error.code; + + cb(err); } else if (cb) { cb(null); diff --git a/lib/iptables/replace.js b/lib/iptables/replace.js index ebaefbe..7bac661 100644 --- a/lib/iptables/replace.js +++ b/lib/iptables/replace.js @@ -53,11 +53,11 @@ module.exports = function (options, cb) { */ exec(cmd.concat(args).join(' '), function (error, stdout, stderror) { if (error && cb) { - cb({ - msg : stderror.split('\n')[0], - cmd : cmd.concat(args).join(' '), - code: error.code - }); + var err = new Error(stderror.split('\n')[0]); + err.cmd = cmd.concat(args).join(' '); + err.code = error.code; + + cb(err); } else if (cb) { cb(null); diff --git a/lib/iptables/zero.js b/lib/iptables/zero.js index 7c4ebc2..8d49d3f 100644 --- a/lib/iptables/zero.js +++ b/lib/iptables/zero.js @@ -60,11 +60,11 @@ module.exports = function (/* options?, cb */) { */ exec(cmd.concat(args).join(' '), function (error, stdout, stderror) { if (error && cb) { - cb({ - msg : stderror.split('\n')[0], - cmd : cmd.concat(args).join(' '), - code: error.code - }); + var err = new Error(stderror.split('\n')[0]); + err.cmd = cmd.concat(args).join(' '); + err.code = error.code; + + cb(err); } else if (cb) { cb(null); diff --git a/package.json b/package.json index 13e12d2..b16fc29 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name" : "netfilter", - "version" : "0.2.2", + "version" : "0.2.3", "description" : "Packet filtering framework. Wrapper to provide netfilter capabilities from Node.js", "main" : "index.js", "keywords" : [