Commit Graph

612 Commits (439b7f0eb3dcd8d2ef0328f51097b5b056c50574)
 

Author SHA1 Message Date
Andy Wang 439b7f0eb3
Improve encapsulation 3 years ago
Andy Wang 65443da872
Merge branch 'master' into obfs-fix 3 years ago
Andy Wang 2c709f92df
Correctly assign payloadCipher to Obfuscator field, and add test for this issue 3 years ago
Andy Wang eee8209195
Revert "Refactor obfuscate and deobfuscate functions to reduce a layer of indirection"
This reverts commit 415523f1

See issue #149
3 years ago
Andy Wang 5cb54aa3c9
Correctly fallthrough to fix client configuration compatibility 3 years ago
Andy Wang fd695db044
Reduce unnecessary test bloat 3 years ago
Andy Wang c60c6d8ddb
Avoid assigning functions to variables in hot path 3 years ago
Andy Wang 661db9d083
Correctly copy frame payload in frame sorter 3 years ago
Andy Wang f322f8b47f
Randomise echo test data 3 years ago
Andy Wang 8fbb2dd8cc
Add more data reception tests 3 years ago
Andy Wang 23b32b603f
Latency benchmark 3 years ago
Andy Wang e0b97db7cc
Add unordered benchmark for RecvDataFromRemote 3 years ago
Andy Wang 57bb437802
Log timestamp 3 years ago
Andy Wang d1b05ee9e5
Add new encryption method option aes-128-gcm 3 years ago
Andy Wang cbd71fae6d
Control flow optimisations 3 years ago
Andy Wang 3ad04aa7e9
Add latency benchmark 3 years ago
Andy Wang 2d08e88efb
Use a sync.Pool to remove the global random bottleneck in picking a random conn 3 years ago
Andy Wang 415523f10a
Refactor obfuscate and deobfuscate functions to reduce a layer of indirection 3 years ago
Andy Wang 2f17841f85
Use Compare-And-Swap for atomic booleans indicating session and switchboard closed 3 years ago
Andy Wang 4f34e69006
Use pooled buffer for session closing frame 3 years ago
Andy Wang 881f6e6f9d
Use sync.Pool for obfuscation buffer 3 years ago
Andy Wang 5933ad8781
Replace bytes.Buffer with vanilla []byte in tls wrapper 3 years ago
Andy Wang 4209483a48
Reduce memory pressure in tests 3 years ago
Andy Wang 3b24c33e78
Remove incorrect concurrent uses of testing.T.Fatal 3 years ago
Andy Wang 70a9723377
Temp fix to testing reading after closing a stream 3 years ago
Andy Wang a97f5759c0
Fix race condition in tests 3 years ago
Andy Wang 0209bcd977
Fix race condition in steam closing. Fall back to temp buffer allocation 3 years ago
Andy Wang 53f0116c1d
Fix race condition in the use of assert.Eventually 3 years ago
Andy Wang 9108794362
Fix race condition in allocating obfsBuf 3 years ago
Andy Wang 5c5e9f8c14
Prevent unnecessary allocation in stream closing 3 years ago
Andy Wang 3e737717bd
Use assert.Eventually to correctly handle more timing sensitive tests 3 years ago
不确定 dc030fbb47
Implement UDP stream timeout. (#148)
* Implement UDP stream timeout.

* Correctly delete streams from map after closing

Co-authored-by: Andy Wang <cbeuw.andy@gmail.com>
3 years ago
Andy Wang 4d1612774f
Use a buffer pool to reduce contentions in tls wrapper 3 years ago
Andy Wang 35f41424c9
Use default hashmap to store streams. Avoid allocating a stream object on receiving every single frame 3 years ago
Andy Wang fd5005db0a
Fix a timing sensitive test on reading data after actively closing a stream 3 years ago
Andy Wang ff503b06a8
Only allocate and copy frame object into sorter heap when necessary (out of order frame) 3 years ago
Andy Wang 5a3f63f101
Reduce allocation of frame objects on receiving data 3 years ago
Andy Wang 104117cafb
Fix one instance of not accessing recvBuf via the getter 3 years ago
Andy Wang 4bc80af9a1
Lazily allocate stream receiving buffer 3 years ago
Andy Wang badda76454
Improve data receive benchmark 3 years ago
Andy Wang 42f36b94d3
Achieve zero allocation when writing data through stream 3 years ago
Andy Wang 3633c9a03c
Fix multiplex test as test payload length may be randomised to 0 3 years ago
Andy Wang c9ac93b0b9
Refactor session_test.go 3 years ago
Andy Wang de0daac123
Update deprecated curve25519 functions and defend against low-order point attacks 3 years ago
Andy Wang 0d3f8dd27f
Allow DatabasePath to be empty if user info database is never used 3 years ago
Andy Wang 298e6249e6
Fixup build scripts 3 years ago
Andy Wang 0473d71bea
Fix overflow in padding length calculation 3 years ago
Andy Wang 1e41aabe7d
Alter glob in release action 3 years ago
Andy Wang c293cd3789
Migrate off azure 3 years ago
Andy Wang fa4ec77d71
Remove Travis CI badge 3 years ago