Commit graph

1215 commits

Author SHA1 Message Date
Micah Anderson
5ee90a78b4 Build multi-arch image.
This will build only those architectures that we have runners to build on
2024-03-03 14:07:33 +00:00
Micah Anderson
9175e86321 Automatically build container on release and push to our registry.
Now that Tor's gitlab has the container registry enabled, we can build a
snowflake container on release, and push the built container to the snowflake
registry.

This is accomplished without using privileged gitlab runners, via kaniko.

This would speed up snowflake updates for people running the docker
container. It would also mean that the 'docker-snowflake-proxy' project would no
longer need to exist.

Fixes docker-snowflake-proxy#10
Fixes docker-snowflake-proxy#13
2024-03-03 14:07:33 +00:00
Cecylia Bocovich
7b47a7d94b
Use known working version of shadow 2024-02-27 13:41:43 -05:00
Cecylia Bocovich
810f1fcc00
Use golang:1.21 container for shadow experiments 2024-02-27 13:41:43 -05:00
Cecylia Bocovich
2c16ef83cb
Patch snowflake server in shadow experiment
Prevent an unsupported syscall in shadow from causing the snowflake
server to fail.
2024-02-27 13:41:43 -05:00
Cecylia Bocovich
f95babc1e1
Export shadow logs as an artifact for debugging 2024-02-27 13:41:43 -05:00
Cecylia Bocovich
b3b03d1a56
Add integration testing with shadow
This change uses the Shadow network simulator[0] to run a minimal snowflake
network and pass data between a client and a server.

[0] https://shadow.github.io/
2024-02-27 13:41:43 -05:00
Cecylia Bocovich
b130151b24
Bump version to v2.9.1 2024-02-27 11:32:09 -05:00
Renovate Bot
0c3d92c646
chore(deps): update module github.com/miekg/dns to v1.1.58 2024-02-21 14:58:56 +00:00
Renovate Bot
533caaf47a
chore(deps): update module golang.org/x/net to v0.21.0 2024-02-20 14:59:50 +00:00
Renovate Bot
95e677c911
chore(deps): update module golang.org/x/crypto to v0.19.0 2024-02-20 14:19:29 +00:00
Renovate Bot
f52785e807
chore(deps): update module github.com/refraction-networking/utls to v1.6.2 2024-02-19 14:08:47 +00:00
meskio
bbd8b3af75
Merge remote-tracking branch 'gitlab/mr/253' 2024-02-19 09:55:49 +01:00
am3o
acce1f1fd9
refactor: change deprecated "io/ioutil" package to recommended "io" package 2024-02-17 12:47:22 +01:00
Renovate Bot
35984c0876 chore(deps): update module github.com/aws/aws-sdk-go-v2/config to v1.27.0 2024-02-13 20:16:38 +00:00
Renovate Bot
4c67e5103d
chore(deps): update module github.com/aws/aws-sdk-go-v2/config to v1.26.6
Signed-off-by: Cecylia Bocovich <cohosh@torproject.org>
2024-02-12 16:59:39 -05:00
Renovate Bot
49c4f7dc19
chore(deps): update module github.com/pion/ice/v2 to v2.3.13
Signed-off-by: Cecylia Bocovich <cohosh@torproject.org>
2024-02-12 16:55:34 -05:00
Anna “CyberTailor”
d411842a9d
chore(ci): use golang:1.21 in generate_tarball job
Signed-off-by: Cecylia Bocovich <cohosh@torproject.org>
2024-02-12 16:48:12 -05:00
Cecylia Bocovich
38352b22ad
Bump version to v2.9.0 2024-02-05 12:00:05 -05:00
Michael Pu
5f5cbe6431
Prune metrics that are reported for rendezvous
Signed-off-by: Cecylia Bocovich <cohosh@torproject.org>
2024-01-31 14:34:32 -05:00
Anthony Chang
dbecefa7d2
Move RendezvousMethod field to messages.Arg 2024-01-31 14:34:29 -05:00
Michael Pu
26ceb6e20d
Add metrics for tracking rendezvous method
Update tests for metrics

Add rendezvous_method to Prometheus metrics

Update broker spec docs with rendezvous method metrics

Bug fix
2024-01-31 14:34:29 -05:00
Michael Pu
b8df42a377
Fix nil ptr deference when listing client queues
Signed-off-by: Cecylia Bocovich <cohosh@torproject.org>
2024-01-31 12:50:50 -05:00
Andrew Wang
9b90b77d69
Add unit tests for SQS rendezvous in broker
Co-authored-by: Michael Pu <michael.pu@uwaterloo.ca>
2024-01-22 13:11:03 -05:00
Anthony Chang
32e864b71d
Add unit tests for SQS rendezvous in client
Co-authored-by: Michael Pu <michael.pu@uwaterloo.ca>
2024-01-22 13:11:03 -05:00
Anthony Chang
f3b062ddb2
Add mocks and interfaces for testing SQS rendezvous
Co-authored-by: Michael Pu <michael.pu@uwaterloo.ca>
2024-01-22 13:10:56 -05:00
Michael Pu
8fb17de152
Implement SQS rendezvous in client and broker
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-22 13:06:42 -05:00
David Fifield
d0529141ac Cosmetic fixes taken from !219.
shelikhoo/dev-udp-performance-rebased branch
https://gitlab.torproject.org/shelikhoo/snowflake/-/commits/9dce28cfc2093490473432ffecd9abaab7ebdbdb
2024-01-16 18:43:58 +00:00
Cecylia Bocovich
f7a468e31b
Add probetest commandline option for STUN URL 2024-01-10 11:37:24 -05:00
Cecylia Bocovich
fe2f7de9a8
Use SetNet setting in probetest to ignore net.Interfaces error
Needed to get probetest running in shadow. Applies the fix from
https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/issues/40278
to the probetest server.
2024-01-10 11:06:39 -05:00
Cecylia Bocovich
3939554058
Add proxy commandline option for probe server URL 2024-01-10 11:05:56 -05:00
Renovate Bot
54a47287ee
chore(deps): update module github.com/xtaci/kcp-go/v5 to v5.6.7 2024-01-08 10:13:07 -05:00
Renovate Bot
591be5205a
chore(deps): update module google.golang.org/protobuf to v1.32.0 2024-01-08 10:12:26 -05:00
Renovate Bot
48af2b2138
chore(deps): update module github.com/prometheus/client_golang to v1.18.0 2024-01-08 10:11:14 -05:00
Renovate Bot
c98f50f5a7
chore(deps): update module golang.org/x/sys to v0.16.0 2024-01-08 10:09:53 -05:00
Arlo Breault
e4c818be76
Scrub space separated ip addresses
The issue with ReplaceAllFunc is that it's capturing the leading and
trailing spaces in the regexp, so successive ips don't match.  From the
docstring,

> If 'All' is present, the routine matches successive non-overlapping
> matches of the entire expression.

For #40306
2024-01-08 10:03:35 -05:00
Arlo Breault
98db63ad01 Update recommended torrc options in the client readme
For #40294
2024-01-04 17:36:22 +00:00
Arlo Breault
0d8261c46e Add vcs revision to version string
For #40285
2024-01-04 00:31:08 -05:00
Cecylia Bocovich
a0e3e871c4
Bump version to v2.8.1 2023-12-21 15:54:54 -05:00
Cecylia Bocovich
9f330caa08
Suppress logs of EventOnProxyConnectionOver 2023-12-21 10:39:48 -05:00
meskio
91ffc333d6
Merge remote-tracking branch 'gitlab/mr/224' 2023-12-20 12:57:41 +01:00
Renovate Bot
0995b1dd7a chore(deps): update module golang.org/x/crypto to v0.17.0 [security] 2023-12-19 05:13:10 +00:00
Renovate Bot
04266abb33 chore(deps): update module github.com/refraction-networking/utls to v1.6.0 2023-12-18 13:11:22 +00:00
n8fr8
36a8eb487f
Add Ignore Android Restriction Workaround for Proxy 2023-12-18 12:58:48 +00:00
Renovate Bot
cd0167fe65
chore(deps): update module github.com/pion/webrtc/v3 to v3.2.24 2023-12-14 17:08:54 -05:00
Renovate Bot
f9c333995d chore(deps): update module golang.org/x/net to v0.19.0 2023-11-30 15:41:21 +00:00
Renovate Bot
6796319341
chore(deps): update module golang.org/x/crypto to v0.16.0 2023-11-30 15:02:49 +00:00
Renovate Bot
4fe86a0ec4
chore(deps): update module golang.org/x/sys to v0.15.0 2023-11-30 14:20:56 +00:00
David Fifield
aa06e7bef3 Merge branch 'encapsulation-readdata-buffer' 2023-11-21 03:46:46 +00:00
David Fifield
234d9cb11c Link a section in the pion/webrtc@3.0.0 release notes. 2023-11-21 01:27:09 +00:00