snowflake/client
David Fifield ae7cc478fd Release resources in client Transport.Dial on error.
Make a stack of cleanup functions to run (as with defer), but clear the
stack before returning if no error occurs.

Uselessly pushing the stream.Close() cleanup just before clearing the
stack is an intentional safeguard, for in case additional operations are
added before the return in the future.

Fixes #40042.
2021-05-24 15:28:13 -06:00
..
lib Release resources in client Transport.Dial on error. 2021-05-24 15:28:13 -06:00
README.md Remove copy/paste signalling 2019-05-08 11:21:56 -04:00
snowflake.go Fix error handling around transport.Dial. 2021-05-24 14:40:50 -06:00
torrc Switch front domain and host to fastly 2021-04-01 11:56:52 -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.