From 752001f5d7df763101c268f8d9240ce8351206d4 Mon Sep 17 00:00:00 2001 From: Luke Hines Date: Wed, 2 Mar 2016 17:11:29 +0000 Subject: [PATCH] Allows dash characters in subdomains --- server.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/server.js b/server.js index 707c510..cba69c0 100644 --- a/server.js +++ b/server.js @@ -134,7 +134,7 @@ function maybe_bounce(req, res, sock, head) { var client_req = http.request(opt, function(client_res) { // write response code and headers res.writeHead(client_res.statusCode, client_res.headers); - + client_res.pipe(res); on_finished(client_res, function(err) { done(); @@ -221,7 +221,7 @@ module.exports = function(opt) { var req_id = req.params.req_id; // limit requested hostnames to 63 characters - if (! /^[a-z0-9]{4,63}$/.test(req_id)) { + if (! /^(?:[a-z0-9][a-z0-9\-]{4,63}[a-z0-9]|[a-z0-9]{4,63})$/.test(req_id)) { var err = new Error('Invalid subdomain. Subdomains must be lowercase and between 4 and 63 alphanumeric characters.'); err.statusCode = 403; return next(err);