From 31dbc16d90751182c6af6f2ca4f8f7d3585eac82 Mon Sep 17 00:00:00 2001 From: nightwing Date: Wed, 19 Aug 2015 18:07:32 +0400 Subject: [PATCH 1/2] ensure we never use node_modules outside of root dir --- node_modules/c9/setup_paths.js | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/node_modules/c9/setup_paths.js b/node_modules/c9/setup_paths.js index 590bd64d..e737a890 100644 --- a/node_modules/c9/setup_paths.js +++ b/node_modules/c9/setup_paths.js @@ -5,13 +5,17 @@ */ var modules = require("module"); var oldResolve = modules._resolveFilename; -var extraPaths = [ - __dirname + "/../../" -]; +var path = require("path") +var root = path.join(__dirname, "/../.."); +var extraPaths = [ root ]; modules._resolveFilename = function(request, parent) { if (!parent) parent = { paths: [], filename: "" }; // Ensure client extensions can be loaded request = request.replace(/^lib\//, "node_modules/"); + // ensure we never use node_modules outside of root dir + parent.paths = parent.paths.filter(function(p) { + return p.indexOf(root) == 0 + }); // Add the extra paths extraPaths.forEach(function(p) { if (parent.paths.indexOf(p) === -1) From 7a78fa8b4c47200b3bb27e808aab697e65f2d495 Mon Sep 17 00:00:00 2001 From: nightwing Date: Wed, 19 Aug 2015 17:51:27 +0400 Subject: [PATCH 2/2] fix missing module error in sdk --- configs/standalone.js | 2 +- plugins/c9.error/logger.raygun_noop.js | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+), 1 deletion(-) create mode 100644 plugins/c9.error/logger.raygun_noop.js diff --git a/configs/standalone.js b/configs/standalone.js index 35520181..e4ceafc3 100644 --- a/configs/standalone.js +++ b/configs/standalone.js @@ -178,7 +178,7 @@ module.exports = function(config, optimist) { readonly: readonly }, "./c9.vfs.server/vfs.server", - "./c9.error/logger.raygun_mock", + "./c9.error/logger.raygun_noop", "./c9.preview/preview.handler", "./c9.vfs.server/cache", "./c9.vfs.server/download", diff --git a/plugins/c9.error/logger.raygun_noop.js b/plugins/c9.error/logger.raygun_noop.js new file mode 100644 index 00000000..79b24d27 --- /dev/null +++ b/plugins/c9.error/logger.raygun_noop.js @@ -0,0 +1,18 @@ +"use strict"; + +plugin.consumes = []; +plugin.provides = ["error.logger"]; + +module.exports = plugin; + +function plugin(options, imports, register) { + var noop = function() {}; + + register(null, { + "error.logger": { + log: noop, + error: noop, + warn: noop + } + }); +}