9seconds
e1864377c2
Update golangci-lint to 1.40.1
5 лет назад
9seconds
16f9ec690b
Fix race condition in closing a relay
This commit fixes a situration when relay can be reset before all
waiting goroutines are finished. For example, we terminate processing
based on some event: socket error etc. So, error happens and context is
cancelled. After that a main relay goroutine starts to wait. Meanwhile a
second goroutine reaches deferred function and set wg to done. It means
that main goroutine can continue.
In this case this is really possible that we can start resetting before
transmit goroutine really exits.
A correct solution is to always do wg.Done() as a first deferred thing
on entering to a function. In that case we do not need reordering and so
on.
5 лет назад
9seconds
115510985a
Add option to use telegram test dcs
5 лет назад
9seconds
585ebfeb50
Update golanci-lint
5 лет назад
9seconds
43f5d2131e
Add test for client hello validation
5 лет назад
9seconds
e2073f0585
Remove timeattack module
5 лет назад
9seconds
54a7c6a2a5
Small subtle optimizations of faketls
5 лет назад
9seconds
24fdec6694
Move testlib to internal
5 лет назад
9seconds
38ff62fddc
Add tests for faketls conn
5 лет назад
9seconds
26070d5b3e
More correct calculation of dc for obfuscated2 frame
5 лет назад
9seconds
03d98ee256
Add relay test for timeout
5 лет назад
9seconds
dc28677086
Fix lint
5 лет назад
9seconds
54f4b397b6
Add tests for relay conn
5 лет назад
9seconds
96bcb6cd8e
Add tests for welcome packet
5 лет назад
9seconds
491b674e70
Add tests for client hello
5 лет назад
9seconds
64754d1039
Add tests for faketls record
5 лет назад
9seconds
23c42def4f
Add test for faketls type and version
5 лет назад
9seconds
841a4d2227
Get rid of unrequired buffering for tls records
5 лет назад
9seconds
3cacd74e12
Correctly reset relay state
5 лет назад
9seconds
4c3f42e264
Simplify relay
5 лет назад
9seconds
3992054560
Correctly manage partial writes
5 лет назад
9seconds
5eca6ecb05
Validate hostname if it was found in SNI
5 лет назад
9seconds
ce30e128e5
fixup address for dc 5
5 лет назад
9seconds
9b78f766e8
fix lint issues
5 лет назад
9seconds
e2e464d32c
Set random length of the tls packets
5 лет назад
9seconds
f0efa4697e
Faketls works now
5 лет назад
9seconds
6d92d5fe21
Fix lint issues
5 лет назад
9seconds
c3e8e8b1fe
Add base faketls processing
5 лет назад
9seconds
a444a10bd0
Rename client hello file
5 лет назад
9seconds
d3551aa9cc
Move clienhello to faketls
5 лет назад
9seconds
4a2d1df384
Can correctly accept faketls messages
5 лет назад
9seconds
a3c64c1d1e
Fix lint issue
5 лет назад
9seconds
02aa969d6c
Use dc indexes accordingly
5 лет назад
9seconds
4da2a4f10f
Add comment for relay test
5 лет назад
9seconds
336e825e3a
Add wg to observer
This is to ensure a case when we still can have observer hanging around
5 лет назад
9seconds
b42e51e300
Small improvements
5 лет назад
9seconds
6b1bfe7b17
Add primitive relay tests
5 лет назад
9seconds
3076c52adb
Refactor snapshot files
5 лет назад
9seconds
933855a233
Refactor server handshake test
5 лет назад
9seconds
ea698259d5
Add raw version of server handshake test
5 лет назад
9seconds
e3b7472239
Add test for handshake frame
5 лет назад
9seconds
a3362c7ea4
Proxy is working in a simple mode now
5 лет назад
9seconds
66c45dc83b
Add obfuscated2 server handshake
5 лет назад
9seconds
42160a08fe
Add EventTraffic
5 лет назад
9seconds
925a02dac3
Test telegram dc dialer
5 лет назад
9seconds
7108fe99ec
Add implementation of telegram dialer
5 лет назад
9seconds
69203f3e23
Add tests for obfuscated2 clientside
5 лет назад
9seconds
4d2d21e101
Small refactorings
5 лет назад
9seconds
8de727932d
Unpool handshake
Anyway, we are going to use stack here, no need for connection pooling.
Even arrays are allocaed on a stack because we do not use slices here
but real ones.
5 лет назад
9seconds
188fa6a04a
Remove redundand utils file
5 лет назад