snowflake/client
David Fifield 70126177fb Turbo Tunnel client and server.
The client opts into turbotunnel mode by sending a magic token at the
beginning of each WebSocket connection (before sending even the
ClientID). The token is just a random byte string I generated. The
server peeks at the token and, if it matches, uses turbotunnel mode.
Otherwise, it unreads the token and continues in the old
one-session-per-WebSocket mode.
2020-04-23 16:02:56 -06:00
..
lib Turbo Tunnel client and server. 2020-04-23 16:02:56 -06:00
client_test.go Touched up snowflake client tests 2019-12-06 11:30:34 -05:00
README.md Remove copy/paste signalling 2019-05-08 11:21:56 -04:00
snowflake.go Immediately and unconditionally grant new SOCKS connections. 2020-04-23 14:00:03 -06:00
torrc Change dummy address for snowflake 2020-04-01 12:55:37 -04:00
torrc-localhost Change dummy address for snowflake 2020-04-01 12:55:37 -04:00

This is the Tor client component of Snowflake.

It is based on goptlib.

Flags

The client uses these following torrc options by default:

ClientTransportPlugin snowflake exec ./client \
-url https://snowflake-broker.azureedge.net/ \
-front ajax.aspnetcdn.com \
-ice stun:stun.l.google.com:19302

-url should be the URL of a Broker instance.

-front is an optional front domain for the Broker request.

-ice is a comma-separated list of ICE servers. These can be STUN or TURN servers.