fix bad matching against subdomains

Match for valid subdomains versus anything that comes before a period.

fixes #7
This commit is contained in:
Roman Shtylman
2014-04-20 12:56:26 -04:00
parent 8abb4f395f
commit 8cc22d501c
4 changed files with 35 additions and 10 deletions

View File

@@ -8,6 +8,7 @@ var makeover = require('makeover');
var makeup = require('makeup');
var engine = require('engine.io');
var browserkthx = require('browserkthx');
var tldjs = require('tldjs');
var debug = require('debug')('localtunnel-server');
var Proxy = require('./proxy');
@@ -32,16 +33,12 @@ function maybe_bounce(req, res, bounce) {
return false;
}
// extract the subdomain, which is the client id
var match = hostname.match(/^([a-z0-9]+)[.].*/);
// not for a specific client
// pass on to regular server
if (!match) {
var subdomain = tldjs.getSubdomain(hostname);
if (!subdomain) {
return false;
}
var client_id = match[1];
var client_id = subdomain;
var client = clients[client_id];
// no such subdomain