Commit Graph

100 Commits (0473d71bea4c7896e50a8e48bf679ff7d5d9b04e)

Author SHA1 Message Date
不确定 cfbf0dfcb6
Fix critical bugs in session opening for TCP and UDP in case of Singleplex mode. (#145)
* Fix critical bugs in session opening for TCP and UDP in case of Singleplex mode.

- In case of TCP, don't open the session in the listener accept thread. This
  causes resource exhaustion of the tcp listener backlog queue in case of internet
  connection disruption or timeout.

- In case of UDP, don't create a new session for every UDP packet.

* Fix race in integration test.

* Fix race condition in session maker

* Code style improvements

* Explicit session.Close() call is indeed needed

Co-authored-by: Andy Wang <cbeuw.andy@gmail.com>
4 years ago
不确定 a72273096a
Add CdnHttpHost config setting with documentation. (#143)
* Add CdnHttpHost config setting with documentation.

* Rename CdnHttpHost to CDNOriginHost and make README more concise

Co-authored-by: Andy Wang <cbeuw.andy@gmail.com>
4 years ago
不确定 e77fd4c446
Fix regression: termination of long downloads after StreamTimeout seconds (#141)
* Fix termination of long downloads after StreamTimeout seconds.

- Even if not broadcasting in a loop, we still need to update the read deadline.
- Don't enforce the timeout after the first data is written.

* When timeout no longer needs to be enforced, no need to schedule a broadcast.

* Fix Cloak client. Don't enforce read deadline after first read.

* Enforce StreamTimeout on the initial bytes sent by localConn only.

* Revert changes to multiplex module. Remove timeout from caller.
4 years ago
不确定 b7e7bfb314
Make sure times are UTC and correctly subtract the timestamp window from the server time. (#134) 4 years ago
Andy Wang 0f6e0d37b5 Rename constants to camel case 4 years ago
Andy Wang c7c3f7706d Refactor for clarity and add comments 4 years ago
Andy Wang c749b107e2 Improve test coverage for client's ParseConfig 4 years ago
Andy Wang a59d9cb880 Fix singleplex and add tests 4 years ago
Andy Wang 86e2935607 Use a pre-made buffer for TLSConn.Write 4 years ago
Andy Wang 3f3259d4d3 MakeSession no longer needs to know if the Session should be admin 4 years ago
Andy Wang f96925982f Rename SplitConfigs to ProcessRawConfig to better reflect its behaviour 4 years ago
Andy Wang 9887649b88 Refactor Singleplexing 4 years ago
Andy Wang c3ea7f7263 Fix test GREASE comparison 4 years ago
Andy Wang 8d2605cafa Fix test 4 years ago
Andy Wang 05482e64d2 Update Chrome signature to 85. Address #129 4 years ago
Andy Wang cfbdd9a608 Prevent nil pointer panic when server response is incorrect under CDN mode 4 years ago
Andy Wang 6bd2e8fe1e Mitigation for https://github.com/cbeuw/Cloak-android/issues/13 4 years ago
notsure2 dab137dbd7 Support session per connection mode (like GoQuiet) when NumConn = 0. 4 years ago
Andy Wang 128f653ea4 Fix duplicate UDP binding 4 years ago
Andy Wang 369f3c781c Fix UDP 4 years ago
Andy Wang e202d8d03b Implement WriteTo and ReadFrom timeouts 5 years ago
Andy Wang 4a81683e44 Code cleanup and move stuff around 5 years ago
Andy Wang 5d4e8b8d8d Refactor udp piping and add tests 5 years ago
Andy Wang 93cf6dec6e Export fields for testing 5 years ago
Andy Wang d53b80208f Refactor for easier testing 5 years ago
Andy Wang e5bda61587 Close connections properly 5 years ago
Andy Wang 254b7152b6 Fix tests 5 years ago
Andy Wang 444182f5bb Purge impurity 5 years ago
Andy Wang e41394c83c Set frame size limit through multiplexer 5 years ago
Andy Wang 97858197cd Move common types to its own package 5 years ago
Andy Wang 86095ba5e6 Refactor out Dialer 5 years ago
Andy Wang 2400a33818 Remove extra imports 5 years ago
Andy Wang 7e9fe952aa Move code around for clarity 5 years ago
Andy Wang 7bfae8accd Refactor client side transport (breaks server) 5 years ago
Andy Wang dc2b1124cb move function out of util 5 years ago
Andy Wang 545164a300 Make send/receive buffer sizes configurable 5 years ago
Andy Wang 01e5d15d20 Code cleanup 5 years ago
Andy Wang 963dae829d Fix tests 5 years ago
Andy Wang c1f3408c2c Make key lengths explicit 5 years ago
Andy Wang 903a413afc Update test 5 years ago
Andy Wang 25e41d0941 Allow UDP option to be set in both commandline and json 5 years ago
Andy Wang a163f066a6 Refactor client config 5 years ago
Andy Wang 8d84ebd145 Code styles 5 years ago
notsure2 2de034ec92 Make keepalive optional on client -> server and server -> proxy connections. Use KeepAlive value in config (seconds). 5 years ago
Andy Wang 2327420f75 Allow remote host to be set in the client config file 5 years ago
beans 23082aff4f Allow RemotePort to be optionally set in JSON. If it's not set in JSON, Cloak falls back to SS_REMOTE_PORT in SS mode, or the -p argument in standalone 5 years ago
Andy Wang 517a6d6e57 Handle error and retry for Crypto.rand 5 years ago
Andy Wang bc5ce842a0 Refactor makeAuthenticationPayload to allow easier tests 5 years ago
Andy Wang abc39e4e90 Refactor authentication data representations 5 years ago
Andy Wang f90ad52455 Add default stream timeout value to client 5 years ago