Commit Graph

37 Commits

Author SHA1 Message Date
Siddhartha Sahai
fa4802d488 disallow uppercase domains, with test 2015-01-03 04:39:09 +05:30
Roman Shtylman
4dd37bda60 update dependencies 2014-12-11 09:32:00 -08:00
Roman Shtylman
73ec1865ab remove engine.io
No need for homepage to show this stuff for now. Just more things that
can crash the tunnel server!
2014-10-25 17:09:13 -07:00
Roman Shtylman
4a09dc114a better handling of requests that die 2014-10-25 16:59:16 -07:00
Roman Shtylman
13bf109a6e don't log client connection errors 2014-04-28 11:40:06 -04:00
Roman Shtylman
55feebdb9a don't log bounce errors, just destroy the socket 2014-04-23 12:12:12 -04:00
Roman Shtylman
7ecef6b69c make done a no-op if not provided 2014-04-23 12:10:51 -04:00
Roman Shtylman
1b1d75b750 detect when http client request is finished and close connection
If the request is finished before we need to respond, we set a flag and
close the connection.

We also close the connection when the request finishes anyway because we
really like a new connection for each request. Things play nicer with
bouncy that way.
2014-04-22 20:34:13 -04:00
Roman Shtylman
7fedb06bf9 remove old stats object properties 2014-04-22 19:48:11 -04:00
Roman Shtylman
9e89e863a3 remove request count on homepage 2014-04-22 19:41:10 -04:00
Roman Shtylman
8cc22d501c fix bad matching against subdomains
Match for valid subdomains versus anything that comes before a period.

fixes #7
2014-04-20 12:58:59 -04:00
Roman Shtylman
8abb4f395f add test for invalid subdomain requests 2014-04-20 11:05:57 -04:00
Roman Shtylman
873bafc1f6 allow subdomains up to 20 characters
- error out of subdomain outside of acceptable range
- don't check ranges in client id regex capture. If there is no client,
  just give a no client message instead of redirecting to service
  landing page

fixes #40
2014-04-16 22:46:21 -04:00
Roman Shtylman
bc80e37fff handle engine.io websocket errors more gracefully 2014-02-25 11:54:40 -05:00
Roman Shtylman
54ba65ba1f bump length of subdomain to 10 2013-12-31 15:33:43 -05:00
Roman Shtylman
e08ee1edbb fix handling of new requests for generated client id 2013-12-21 10:45:19 -05:00
Roman Shtylman
b6abd16383 update landing page
- restyle
- add sponsors
2013-11-22 17:57:26 -05:00
Roman Shtylman
ae73e16ac2 add --secure flag to indicate proxy can support https requests
When --secure is set, all urls will be sent back with https so use will
use secure proxy.
2013-11-21 21:16:59 -05:00
Roman Shtylman
a4f5ceb4bc https by default for urls 2013-11-21 21:10:33 -05:00
Roman Shtylman
af2c727b41 fix upstream client disconnect handling
When upstream client disconnects, kill any waiting connections. This is
needed to inform the browser that the upstream connection is no longer
available and to close the socket so a new one will be created for new
requests.
2013-11-06 23:06:59 -05:00
Roman Shtylman
0bba03ccd2 fix processing queued requests 2013-11-04 10:30:54 -05:00
Roman Shtylman
6afb75704a use bouncy to proxy requests
- simplifies our codebase a lot!
- queued requests are currently broken
2013-11-03 16:56:41 -05:00
Roman Shtylman
b0e94c9784 explicitly set view dir 2013-06-18 23:15:48 -04:00
Roman Shtylman
d15e568cea refactor server
* shows some basic statistics on main page
* move tcp proxy setup into separate file
* migrate github page theme to be hosted locally
2013-06-18 23:00:45 -04:00
Roman Shtylman
e6971e9afe use bookrc for logging 2013-06-16 18:50:04 -04:00
Roman Shtylman
0568ae0bef close client tcp sockets after each http response
While a little less efficient than keeping tcp connections open, this
helps ensure that bad things don't happen on the socket connections when
http protocol issues happen.
2013-06-16 18:24:27 -04:00
Roman Shtylman
5c6558ed91 fix missing query parsing in server 2012-12-17 14:31:05 -05:00
Roman Shtylman
79ca069c38 refactor to use http-raw for lt server incoming
- http raw exposes a socket to the req/res pair
- cleanup client to be more resilient
- add test for queued requests
2012-12-17 14:23:12 -05:00
Roman Shtylman
b605e9b823 server: make sure client id are released when unused
When clients disconnect, their tcp server should be shutdown and the id
released after a grace period.
2012-11-14 13:53:33 -05:00
Roman Shtylman
51d91ce0e8 refactor server tcp handling
- limit on number of tcp connections
- preliminary support for websockets
2012-10-17 22:50:59 -04:00
Roman Shtylman
72a3740dbd parse query from url 2012-10-16 23:22:46 -04:00
Roman Shtylman
70a1bf9f96 redirect / to github page 2012-10-16 23:10:21 -04:00
Roman Shtylman
9964d73644 hack to handle no hostname for now
If the hostname is not specified then wtf?
2012-06-24 23:05:56 -04:00
Roman Shtylman
e6c53ad590 allow client to request previous id for reuse 2012-06-18 15:40:23 -04:00
Roman Shtylman
90cd0ed18c skip favicon for non proxy routes 2012-06-18 13:52:00 -04:00
Roman Shtylman
682e58c68e use random id for new clients
remove 'asdf' id used during testing
2012-06-18 13:40:33 -04:00
Roman Shtylman
93d62b9dbb init 2012-06-17 22:46:05 -04:00