9seconds
a0aabf2391
Switch to rand/v2
2 mēnešus atpakaļ
9seconds
3b03c4a90a
More idioms related to go 1.26
2 mēnešus atpakaļ
9seconds
36546cec2f
Change default DOH to cloudflarte
2 mēnešus atpakaļ
9seconds
074c4017f5
Formatting by gofumpt
2 mēnešus atpakaļ
9seconds
8e87405d3e
Remove integration with gotd
2 mēnešus atpakaļ
9seconds
308e372a5d
Propagate DcUpdateEach setting
2 mēnešus atpakaļ
9seconds
0a5a45b32d
Create internal DC package
2 mēnešus atpakaļ
9seconds
852ca713c8
Fetch DC ips from Telegram
2 mēnešus atpakaļ
9seconds
60b4b5ad8f
Fix lint issues
2 mēnešus atpakaļ
9seconds
ecba88d2e3
Update to the latest golangci-lint
2 mēnešus atpakaļ
9seconds
36dad5a2f6
Update golangci-lint
3 gadus atpakaļ
9seconds
1575b82688
Update golangci-lint
4 gadus atpakaļ
9seconds
d8b14dc765
Add fuzzing for client hello
4 gadus atpakaļ
9seconds
e0850869ba
Linting
4 gadus atpakaļ
9seconds
9375552180
Add fuzz tests for obfuscated2
4 gadus atpakaļ
9seconds
5282ca26f3
Update golangci-lint to 1.44.2
4 gadus atpakaļ
9seconds
1a9bc80091
Unexport an error that is not required
4 gadus atpakaļ
9seconds
b15a8ec4a5
More correct error if no addresses are found
4 gadus atpakaļ
9seconds
93bed24a0b
Remove all cleverness that broke uploads
4 gadus atpakaļ
9seconds
e7416bc04d
Fix lint issues
4 gadus atpakaļ
9seconds
33e0509c5a
Optimize for a fast flush
4 gadus atpakaļ
9seconds
ffad717829
Use CloseRead and CloseWrites
4 gadus atpakaļ
9seconds
7b1f86b75d
wip
4 gadus atpakaļ
9seconds
a5e59d9ef7
Add syncPair
4 gadus atpakaļ
9seconds
ce8163d1b7
Minor simplification
4 gadus atpakaļ
9seconds
66f4d967e7
Get rid of buffersize everywhere
4 gadus atpakaļ
9seconds
fbe4d32590
Fallback to another DC if given is unknown
4 gadus atpakaļ
9seconds
ca5800cf60
Simplify tcp relay time randomization
4 gadus atpakaļ
9seconds
456ed5b051
Change algorithm of TCP relaying
4 gadus atpakaļ
9seconds
e1864377c2
Update golangci-lint to 1.40.1
5 gadus atpakaļ
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 gadus atpakaļ
9seconds
115510985a
Add option to use telegram test dcs
5 gadus atpakaļ
9seconds
585ebfeb50
Update golanci-lint
5 gadus atpakaļ
9seconds
43f5d2131e
Add test for client hello validation
5 gadus atpakaļ
9seconds
e2073f0585
Remove timeattack module
5 gadus atpakaļ
9seconds
54a7c6a2a5
Small subtle optimizations of faketls
5 gadus atpakaļ
9seconds
24fdec6694
Move testlib to internal
5 gadus atpakaļ
9seconds
38ff62fddc
Add tests for faketls conn
5 gadus atpakaļ
9seconds
26070d5b3e
More correct calculation of dc for obfuscated2 frame
5 gadus atpakaļ
9seconds
03d98ee256
Add relay test for timeout
5 gadus atpakaļ
9seconds
dc28677086
Fix lint
5 gadus atpakaļ
9seconds
54f4b397b6
Add tests for relay conn
5 gadus atpakaļ
9seconds
96bcb6cd8e
Add tests for welcome packet
5 gadus atpakaļ
9seconds
491b674e70
Add tests for client hello
5 gadus atpakaļ
9seconds
64754d1039
Add tests for faketls record
5 gadus atpakaļ
9seconds
23c42def4f
Add test for faketls type and version
5 gadus atpakaļ
9seconds
841a4d2227
Get rid of unrequired buffering for tls records
5 gadus atpakaļ
9seconds
3cacd74e12
Correctly reset relay state
5 gadus atpakaļ
9seconds
4c3f42e264
Simplify relay
5 gadus atpakaļ
9seconds
3992054560
Correctly manage partial writes
5 gadus atpakaļ