Commit Graph

103 Commits (master)

Author SHA1 Message Date
name e696b18187 format using goimports 1 year ago
Selim ae14e28999
ServerName rotation (#158)
* inital servername rotation

* Move MockDomainList to LocalConnConfig as the list doesn't need to be sent to the remote

* Use CSPRNG to pick the next candidate of MockDomains

Co-authored-by: Andy Wang <cbeuw.andy@gmail.com>
3 years ago
Andy Wang 57bb437802
Log timestamp 3 years ago
不确定 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>
3 years ago
notsure2 caca33a1a5 Respect user choice of ProxyMethod in shadowsocks plugin mode. 4 years ago
Andy Wang c6d6f40021 Format Android protector C code 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 0b217ddb07 Linting 4 years ago
notsure2 dab137dbd7 Support session per connection mode (like GoQuiet) when NumConn = 0. 4 years ago
不确定 aff53484eb
Accept and ignore 2 parameters passed by shadowsocks-android in shadowsocks plugin mode. (#115) 4 years ago
Andy Wang 5cbc24817d Acceptor function 4 years ago
Andy Wang 5d4e8b8d8d Refactor udp piping and add tests 4 years ago
Andy Wang d53b80208f Refactor for easier testing 4 years ago
Andy Wang 444182f5bb Purge impurity 4 years ago
Andy Wang 86095ba5e6 Refactor out Dialer 4 years ago
Kirill Buev ba5d903539 Fix incorrect config field name for remote port in plugin mode 4 years ago
Andy Wang 25e41d0941 Allow UDP option to be set in both commandline and json 4 years ago
Andy Wang a163f066a6 Refactor client config 4 years ago
Andy Wang 5e1931a11c Ineffectual assignments 4 years ago
notsure2 2de034ec92 Make keepalive optional on client -> server and server -> proxy connections. Use KeepAlive value in config (seconds). 4 years ago
Andy Wang 6b973045d5 Refactor verbosity flag parsing 4 years ago
notsure2 d4ac2a2cf5 Accept log level flag even when started in shadowsocks mode. 4 years ago
Andy Wang 2327420f75 Allow remote host to be set in the client config file 4 years ago
Andy Wang d482661494 Fix #101 by concatenating IPv6 ports correctly 4 years ago
Andy Wang 517a6d6e57 Handle error and retry for Crypto.rand 4 years ago
Andy Wang 339b324946 Working direct WebSocket transport 5 years ago
Andy Wang a3c3c5dc07 Client side plain websocket 5 years ago
Andy Wang 2dcb105005 Allow ProxyMethod to be set as command line argument 5 years ago
Andy Wang 46c02d17f4 Refactor InitState 5 years ago
Andy Wang c44a061cbe Remove a redundant argument 5 years ago
Andy Wang eabe113547 Add Stream Timeout 5 years ago
Andy Wang e28df86a55 Move Unordered field around 5 years ago
Andy Wang d73462653d Refactor routing 5 years ago
Andy Wang 44a09219f7 Experimental support for UDP 5 years ago
Andy Wang 83fb53f0d4 Fix wrong condition for isAdmin 5 years ago
Qian Wang f65a46f4a9 Remove unnecessary state variable IsAdmin 5 years ago
Qian Wang cb672a99de Refactor session configuration 5 years ago
Qian Wang c3d4057315 Add verbosity arguments 5 years ago
Qian Wang d9d8be12dc How tf did I import math/rand as crypto/rand?! 5 years ago
Qian Wang f96a24f13d Fix nil pointer when the session breaks 5 years ago
Qian Wang e15536d7c7 Refactor TLS handshake 5 years ago
Qian Wang 3dc4c6fb3f Add more trace logs 5 years ago
Qian Wang 9fa37e327f Use exclusively salsa20 for header encryption 5 years ago
Qian Wang f933c7b453 Move pipe to util 5 years ago
Qian Wang e75c713385 Refactor session struct's obfs fields 5 years ago
Qian Wang 1a628cb524 Refactor client TLS 5 years ago
Qian Wang 33f232475d Improve logging 5 years ago
Qian Wang 726a405a26 TLS1.3 5 years ago