aboutsummaryrefslogtreecommitdiff
path: root/client
AgeCommit message (Collapse)Author
2024-05-09Use ptutil for safelog and prometheus rounded metricsmeskio
* Related: #40354
2024-03-24Update torrc file to match Tor Browser builtinsCecylia Bocovich
We switched to a CDN77, a cloud provider that supports domain fronting.
2024-03-09Switch to sqscreds param for passing in SQS credentialsMichael Pu
2024-03-05Update testsMichael Pu
2024-03-05Move SQS client ID generation to ExchangeMichael Pu
2024-02-17refactor: change deprecated "io/ioutil" package to recommended "io" packageam3o
2024-01-22Add unit tests for SQS rendezvous in brokerAndrew Wang
Co-authored-by: Michael Pu <michael.pu@uwaterloo.ca>
2024-01-22Add unit tests for SQS rendezvous in clientAnthony Chang
Co-authored-by: Michael Pu <michael.pu@uwaterloo.ca>
2024-01-22Add mocks and interfaces for testing SQS rendezvousAnthony Chang
Co-authored-by: Michael Pu <michael.pu@uwaterloo.ca>
2024-01-22Implement SQS rendezvous in client and brokerMichael Pu
This features adds an additional rendezvous method to send client offers and receive proxy answers through the use of Amazon SQS queues. https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/issues/26151
2024-01-16Cosmetic fixes taken from !219.David Fifield
shelikhoo/dev-udp-performance-rebased branch https://gitlab.torproject.org/shelikhoo/snowflake/-/commits/9dce28cfc2093490473432ffecd9abaab7ebdbdb
2024-01-04Update recommended torrc options in the client readmegl40294Arlo Breault
For #40294
2023-11-21Merge branch 'encapsulation-readdata-buffer'David Fifield
2023-11-21Link a section in the pion/webrtc@3.0.0 release notes.David Fifield
2023-11-07Have encapsulation.ReadData return an error when the buffer is short.David Fifield
https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/merge_requests/154#note_2919109 Still ignoring the io.ErrShortBuffer at the callers, which retains current behavior.
2023-11-07Have encapsulation.ReadData read into a provided buffer.David Fifield
Instead of unconditionally allocating its own.
2023-10-26Check if multiple front domains argument is emptyCecylia Bocovich
This fixes a regression introduced in 9fdfb3d1, where the list of front domains always contained an empty string if none were supplied via the commandline options, causing rendezvous failures for both amp cache and domain fronting. This fix checks to see whether the commandline option was supplied.
2023-10-24Add outbound proxy configuration propagationShelikhoo
2023-10-05Maintain backward compatability with old clientsCecylia Bocovich
Introduce a new commandline and SOCKS argument for comma-separated domain fronts rather than repurposing the old one so that we can maintain backwards compatability with users running old versions of the client. A new bridge line shared on circumvention settings could have both the front= and fronts= options set.
2023-10-05Randomly select front domain from comma-separated listCecylia Bocovich
This commmit changes the command-line and Bridge line arguments to take a comma-separated list of front domains. The change is backwards compatible with old Bridge and ClientTransportPlugin lines. At rendezvous time, a front domain will be randomly chosen from the list.
2023-08-24Workaround for shadow in lieu of AF_NETLINK supportCecylia Bocovich
For details, see https://github.com/shadow/shadow/issues/2980
2023-06-14Append Let's Encrypt ISRG Root X1 to cert poolCecylia Bocovich
This is a workaround for older versions of android that do not trust the Let's Encrypt root certificate. https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/issues/40087
2023-05-31Move the development to gitlabmeskio
Related: tpo/anti-censorship/team#86
2023-05-29Validate SDP offers and answersitchyonion
2023-04-19Use goptlib from gitlab.torproject.orgmeskio
2023-01-30Filter out non stun: server addresses in ParseIceServersitchyonion
2023-01-30Update README to correctly reflec the type of ICE servers we currently supportitchyonion
2023-01-30Parse ICE servers with pion/ice library functionitchyonion
2023-01-19Bring client torrc up to date with Tor Browser fc89e8b1.David Fifield
https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commits/fc89e8b10c3ff30db2079b2fb327d05b2b5f3c80/projects/common/bridges_list.snowflake.txt * Use port 80 in placeholder IP addresses tpo/applications/tor-browser-build!516 * Enable uTLS tpo/applications/tor-browser-build!540 * Shorten bridge line (remove stun.voip.blackberry.com) tpo/applications/tor-browser-build!558 * Add snowflake-02 bridge tpo/applications/tor-browser-build!571
2023-01-03Remove duplicate stun.sonetel.net entryCecylia Bocovich
2022-12-31Remove two suggested STUN servers from client docsCecylia Bocovich
Removed stun.stunprotocol.org after a discussion with the operator, and stun.altar.com.pl after noticing it has gone offline. https://lists.torproject.org/pipermail/anti-censorship-team/2022-December/000272.html https://lists.torproject.org/pipermail/anti-censorship-team/2022-December/000276.html
2022-11-23add version output to logShelikhoo
2022-11-23Add Version Output Support to SnowflakeShelikhoo
From now on, there will be a file at common/version/version.go that includes current version number.
2022-11-21change bandwidth type from int to int64 to prevent overflowluciole
2022-10-12Bump minimum go version to 1.15Cecylia Bocovich
2022-10-09format using go-1.19trinity-1686a
2022-09-26Use Pion's Setting Engine to reduce Multicast DNS noiseTommaso Gragnato
https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/issues/40123 The purpose of the patch is to prevent Pion from opening the mDNS port, thus preventing snowflake from directly leaking .local candidates. What this doesn't prevent is the resolution of .local candidates once they are passed on to the system DNS.
2022-05-31Wrap client NAT logwrap-client-NAT-errorsitchyonion
2022-05-25Move ptEventLogger into the client/snowflake.gomeskio
Remove client/pt_event_logger.go file as is very minimal.
2022-05-25Implement String() method on eventsmeskio
To make it safe for logging safelog.Scrub function is now public. Closes: #40141
2022-04-12Scrub ptEvent logsitchyonion
2022-04-11Move tor-specific code outside of client libraryCecylia Bocovich
2022-03-21Forward bridge fingerprintArlo Breault
gitlab 28651
2022-03-21Stop storing version in ClientPollRequestArlo Breault
This continues to asserts the known version while decoding. The client will only ever generate the latest version while encoding and if the response needs to change, the impetus will be a new feature, set in the deserialized request, which can be used as a distinguisher.
2022-03-16Introduce an unexported newBrokerChannelFromConfigArlo Breault
A follow-up wants to pass in a new property from the ClientConfig but it would be an API breaking change to NewBrokerChannel. However, it's unclear why NewBrokerChannel is exported at all. No other package in the repo depends on it and the known users of the library probably wouldn't be construct them. While this patch was being reviewed, a new constructor was added, NewBrokerChannelWithUTLSSettings, with effectively the same issue. Both of those exported ones are deleted here.
2022-03-16Parse ClientPollRequest version in DecodeClientPollRequestArlo Breault
Instead of IPC.ClientOffers. This makes things consistent with EncodeClientPollRequest which adds the version while serializing.
2022-03-16Rename *PollRequest methods to distinguish client/proxyArlo Breault
2022-03-16Move uTLS configuration to socks5 argShelikhoo
2022-03-16Harmonize identifiers to uTLSShelikhoo
2022-03-16Add line wrap to NewBrokerChannelWithUTlsSettingsShelikhoo