Shelikhoo
9af0ad119b
Add utls imitate setting to snowflake client
2022-03-16 09:13:29 +00:00
Max Bittman
c1c3596cf8
Add name to utls client hello id
2022-03-16 09:13:28 +00:00
Shelikhoo
c1b0f763ef
Add reformat for utls roundtripper
2022-03-16 09:13:28 +00:00
Shelikhoo
4447860661
Add repeated test for utls roundtripper
2022-03-16 09:13:28 +00:00
Shelikhoo
006abdead4
Add utls roundtripper
2022-03-16 09:13:25 +00:00
meskio
19e9e38415
Merge remote-tracking branch 'gitlab/mr/78'
2022-03-11 19:58:17 +01:00
Jake Vossen
99eb794a20
Fixed up/downstream metrics
2022-03-02 11:27:33 -05:00
pjsier
df22114fce
Fix proxy logging verb tense
2022-02-28 18:38:17 -06:00
Anna “CyberTailor”
e18a4ac147
Generate tarballs in release CI
...
The `generate_tarball` job vendors all Go modules to make packaging for
distributions easier.
2022-02-27 10:01:50 +05:00
Cecylia Bocovich
01ae5b56e8
Fix client library test
...
Initialize eventsLogger for WebRTCPeer in client library test.
2022-02-14 15:11:41 -05:00
Cecylia Bocovich
3547b284a9
Make all snowflake events LogSeverityNotice
...
Let's reserve Tor error logs for more severe events that indicate
a client-side bug or absolute failure. By default, tor logs at severity
level notice (and above).
2022-02-14 14:09:16 -05:00
Cecylia Bocovich
2c008d6589
Add connection failure events for proxy timeouts
...
This change adds two new connection failure events for snowflake
proxies. One fires when the datachannel times out and another fires when
the connection to the proxy goes stale.
2022-02-14 14:00:01 -05:00
Cecylia Bocovich
bcc162898a
Initialize SnowflakeListener.closed
...
Fixes a bug where an uninitialized channel causes a panic when closed
(#40099 ).
2022-02-08 13:00:43 -05:00
Cecylia Bocovich
e6e5e20ae8
Update ChangeLog for v2.1.0 release
2022-02-08 10:56:19 -05:00
Cecylia Bocovich
c0b35076c9
Remove support for oneshot mode
...
Due to a bug (#40098 ), legacy oneshot connections have not worked for
awhile. Connections without the turbotunnel token would cause the server
to crash. This fixes that bug by removing support altogether and simply
closes the connection.
2022-02-07 11:39:23 -05:00
Shelikhoo
00e8415d8e
Add verbosity switch to suppress diagnostic output
2022-02-03 13:38:48 +00:00
Shelikhoo
e828b06076
Use log instead of fmt in proxy event logger
...
See also:
https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/merge_requests/72#note_2772839
2022-01-28 14:46:45 +00:00
Shelikhoo
bf3bd635f7
Fix build break in Go 1.16 for missing import
...
See also:
https://gitlab.torproject.org/shelikhoo/snowflake/-/jobs/86751
2022-01-26 13:39:12 +00:00
Shelikhoo
eb229d512b
Fix ProxyEventLogger output
2022-01-25 13:03:19 +00:00
Shelikhoo
88af9da4a2
Fix ProxyEventLogger output
2022-01-25 13:03:19 +00:00
Shelikhoo
1116bc81c8
Add Proxy Event Logger
2022-01-25 13:03:19 +00:00
Shelikhoo
9208364475
Extract traffic formatter
2022-01-25 13:03:19 +00:00
Shelikhoo
f12cfe6a9f
Add proxy event logger state propagate
2022-01-25 13:03:18 +00:00
Shelikhoo
e4305a4d2b
Add EventOnProxyConnectionOver Reporting
2022-01-25 13:03:18 +00:00
Shelikhoo
d64af31394
Add EventOnProxyConnectionOver Event
2022-01-25 13:03:18 +00:00
Shelikhoo
91379a42f3
Add Raw Data Output for bytesLogger
2022-01-25 13:03:14 +00:00
Shelikhoo
6cb82618a0
Refactor WebRTC Peer,Dialer's name to be readable
...
See also:
https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/merge_requests/67#note_2771666
2022-01-25 12:49:59 +00:00
Shelikhoo
657aaa6ba8
Refactor event logger setting into function call
...
See also:
https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/merge_requests/67#note_2770482
2022-01-25 12:49:59 +00:00
Shelikhoo
55bf117d1a
Reduce PT Event Logger Verbosity
2022-01-25 12:49:59 +00:00
Shelikhoo
7536dd6fb7
Add Propagate EventLogger Setting
2022-01-25 12:49:59 +00:00
Shelikhoo
8d2f662c8c
Emit non-pointer type event
2022-01-25 12:49:58 +00:00
Shelikhoo
128936c825
Enable PT Event Logger
2022-01-25 12:49:58 +00:00
Shelikhoo
ac64d17705
Add PT Event Logger
2022-01-25 12:49:58 +00:00
Shelikhoo
36ca610d6b
Add NewWebRTCPeer3E Initializer
...
This name includes [E]vent to reduce merge conflict with forward proxy change set.
2022-01-25 12:49:58 +00:00
Shelikhoo
9a7fcdec03
Add Snowflake Event Reporter for Peer Communication
2022-01-25 12:49:57 +00:00
Shelikhoo
c3f09994da
Add Snowflake Event Reporter for Broker Communication
2022-01-25 12:49:57 +00:00
Shelikhoo
cd6d837d85
Add snowflake event handler to client config
2022-01-25 12:49:57 +00:00
Shelikhoo
b5ef18803f
Add Event Bus Test
2022-01-25 12:49:57 +00:00
Shelikhoo
5f03f88d73
Add Event Bus Implementation
...
This event bus implementation favours simplicity over efficiency and is not suitable for frequent addition and removal of listeners.
2022-01-25 12:49:56 +00:00
Shelikhoo
75f770150d
Add Snowflake Event API interface
2022-01-25 12:49:51 +00:00
Shelikhoo
d2f6ea5417
increase clientIDAddrMapCapacity
...
See also:
https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/issues/40084
2022-01-18 14:33:34 -05:00
Shelikhoo
50646698e3
Suppress connection end log output
...
This is an amendment of https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/merge_requests/30
2022-01-18 14:33:27 -05:00
Cecylia Bocovich
b35a79ac24
Validate client and proxy supplied strings
...
Malicious clients and proxies can provide potentially malicious strings
in the polls. This validates the NAT type and proxy type strings to
ensure that malformed strings are not displayed on a web page
or passed to any of our monitoring infrastructure.
If a client or proxy supplies an invalid NAT type, we return an error
message. If a proxy supplies an unknown proxy type, we set the proxy
type to unknown.
2022-01-12 11:30:41 -05:00
David Fifield
aeb0794d28
Use require
rather than replace
for dtls version.
...
go mod edit -dropreplace=github.com/pion/dtls/v2
go get github.com/pion/dtls/v2@v2.0.12
This is an update to
https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/merge_requests/66 .
2021-12-16 09:46:55 -07:00
Cecylia Bocovich
9c11e479d0
Update go versions in CI tests
...
Debian packages Go 1.15 and 1.17, and we use 1.16 in Tor Browser.
2021-12-10 10:43:47 -05:00
Cecylia Bocovich
738bd464ea
Update version of DTLS library
...
Make sure we use a version of the DTLS library that contains the
following fingerprinting fixes:
Only send supported_groups extension in ClientHello
Do not include IP addresses as SNI values
These changes have been merged upstream into pion/dtls.
2021-12-10 10:39:44 -05:00
Hans-Christoph Steiner
221f1c41c9
gitlab-ci: include job number in the artfacts zipball filename
2021-12-01 11:48:08 +01:00
Hans-Christoph Steiner
51f2c026fd
gitlab-ci: include flags to make reproducible builds
...
* https://github.com/golang/go/issues/33772
2021-12-01 11:48:06 +01:00
Hans-Christoph Steiner
1318b6a9ec
stripped down Android build process for gitlab-ci and Vagrant
2021-12-01 11:48:03 +01:00
Hans-Christoph Steiner
c9399da566
gitlab-ci: expire artifacts in 1 week, improve gradle caching, etc.
2021-12-01 11:09:57 +01:00