diff --git a/lib/vhost-sni-server.js b/lib/vhost-sni-server.js index c51e82c..6dfe5f2 100644 --- a/lib/vhost-sni-server.js +++ b/lib/vhost-sni-server.js @@ -56,21 +56,6 @@ module.exports.create = function (securePort, certsPath, vhostsdir) { var domainMergeMap = {}; var domainMerged = []; - function loadDummyCerts() { - var certs = { - key: fs.readFileSync(path.join(certsPath, 'server', 'dummy-server.key.pem')) - , cert: fs.readFileSync(path.join(certsPath, 'server', 'dummy-server.crt.pem')) - , ca: fs.readdirSync(path.join(certsPath, 'ca')).filter(function (node) { - return /crt\.pem$/.test(node); - }).map(function (node) { - console.log('[Add CA]', node); - return fs.readFileSync(path.join(certsPath, 'ca', node)); - }) - }; - return certs - } - dummyCerts = loadDummyCerts(); - function createSecureContext(certs) { // workaround for v0.12 / v1.2 backwards compat try { @@ -79,7 +64,14 @@ module.exports.create = function (securePort, certsPath, vhostsdir) { return require('crypto').createCredentials(certs).context; } } - secureContexts.dummy = createSecureContext(dummyCerts); + + function getDummyAppContext(err, msg) { + console.error(err); + console.error(msg); + return function (req, res) { + res.end('{ "error": { "message": "' + msg + '" } }'); + } + } function getAppContext(domaininfo) { var localApp; @@ -123,10 +115,10 @@ module.exports.create = function (securePort, certsPath, vhostsdir) { return fs.readFileSync(path.join(certsPath, 'ca', node)); }) }; - secureContexts.dummy = crypto.createCredentials(certs).context; + secureContexts.dummy = createSecureContext(dummyCerts); dummyCerts = certs; + return certs } - loadDummyCerts(); function loadCerts(domainname) { // TODO make async @@ -230,6 +222,8 @@ module.exports.create = function (securePort, certsPath, vhostsdir) { function runServer() { //provide a SNICallback when you create the options for the https server + + loadDummyCerts(); secureOpts = { // fallback / default dummy certs key: dummyCerts.key @@ -245,7 +239,7 @@ module.exports.create = function (securePort, certsPath, vhostsdir) { var secureContext = secureContexts[domainname] || loadCerts(domainname) || secureContexts.dummy - //|| createSecureContext(dummyCerts) + || createSecureContext(dummyCerts) //|| createSecureContext(loadDummyCerts()) ; diff --git a/package.json b/package.json index b09c121..2b8face 100644 --- a/package.json +++ b/package.json @@ -38,16 +38,26 @@ "homepage": "https://github.com/Daplie/walnut", "dependencies": { "bluebird": "^2.9.9", + "body-parser": "^1.12.0", "check-ip-address": "^1.1.0", "cli": "^0.6.5", + "compression": "^1.4.1", "connect": "^3.3.4", + "connect-cors": "^0.5.6", + "connect-query": "^0.2.0", + "cookie-parser": "^1.3.4", + "errorhandler": "^1.3.4", "escape-string-regexp": "^1.0.2", "express": "^4.11.2", + "express-session": "^1.10.3", "foreachasync": "^5.0.5", + "human-readable-ids": "^1.0.1", "nat-pmp": "0.0.3", "node-acme": "0.0.1", "request": "^2.53.0", + "serve-static": "^1.9.1", "ssl-root-cas": "^1.1.7", + "urlrouter": "^0.5.4", "vhost": "^3.0.0", "xml2js": "^0.4.5" }