Commit Graph
103 Commits
Author SHA1 Message Date
zonyitoo 9b6669d0bd UDP relay server implements association properly (#168) 2019-12-01 17:57:08 +08:00
zonyitoo 3ba4f08260 Version v1.8.0-alpha.1 2019-12-01 13:59:15 +08:00
Y. T. CHUNG a3b33f2614 Migrate to std::future, async/await (#165)
* Socks5 library, main tcp relay implementation migrated with async/await

* UDP relay local migrated to async/await

* UDP relay server migrated to async/await

* Migrated UDP DNS to async/await, follows tokio-process

* Removed unused uses, add dyn keyword for TraitObjects

* [#151] Uses dl.google.com/generate_204 to check connection latency

* Make sslocal/ssserver TCP relay work successfully, disabled UDP and DNS relay temporary

* Handshake before performing actual read & write

* Wraps timeout logic into a Connection<S> struct

* Make UDP relay work again

* Local uses copy directly

* Completely removed unused ssdns

* Fixed test

* Uses tokio::main macro for main entrance

* Fixed a missing use in local.rs

* Updated travis openssl to 1.1.0L

* Windows signal

* Migrated tokio 0.2 release with std::future support

fix #173

* fixed windows monitor build

* Uses tokio on crates.io

* ctrl_c is a Future

* Run tests with single tokio runtime

* Uses spawn_blocking only with threaded runtime

* Killing all detached Tasks if server is exited

* Updated version to v1.8.0

* Removed unused pin-project

* Uses dns resolver built in tokio

* Explicitly uses threaded scheduler by default

* Reverted, it is threaded scheduler by default

* Updated bytes to v0.5

* Updated many dependencies

* Add a tunnel app (#175)

It can be used to benchmark.

Usage:
sstunnel -v -s 127.0.0.1:8488 -m plain -k password -b 127.0.0.1:1090 -f 127.0.0.1:5201

"-f xxx" : the target/forwad address xxx

* Removed unused remote-dns config field (ssdns is removed)

* Separated TCP local tunneling to its own module

* Implements FromStr for Address

* Fixed typo

* Add tunnel unit test

* Updated tokio to v0.2.2, fixed basic scheduler bug

* Removed Connection, uses try_timeout instead. Revert back to use 8K buffer

* Revert "Removed Connection, uses try_timeout instead. Revert back to use 8K buffer"

This reverts commit 82f698e520.

* Uses Delay instead of Timeout

* Delay doesnt return io::Result

* Revert "Delay doesnt return io::Result"

This reverts commit 74dc294d16.

* Fixed bug, Connection timeout should be shared between read & write operations
2019-12-01 12:20:39 +08:00
zonyitoo 9acda94eca Bump version to v1.7.2 2019-08-06 21:33:21 +08:00
zonyitoo e982cddd72 Remove outliner before choosing median for ping balancer 2019-07-28 03:16:51 +08:00
zonyitoo b015fe0e4d Updated dependencies 2019-06-03 01:14:16 +08:00
zonyitoo 8aa23e0909 Version should be v1.7.1 2019-04-30 09:04:59 +08:00
zonyitoo e2d5f28795 Updated dependencies 2019-04-26 09:17:03 +08:00
zonyitoo 5b31ee89ec Updated dependencies, removed DNS packet pretty printer 2019-04-20 02:50:17 +08:00
zonyitoo eff680bbbe Updated README for style guide 2019-04-20 02:29:06 +08:00
zonyitoo a9ecb5aa80 Add a load-balancer checking server status by active detection 2019-04-18 09:10:30 +08:00
zonyitoo 47f373bf34 Add optional feature description in Readme, bump version to v1.7.1 2019-04-01 09:34:43 +08:00
zonyitoo a3bcdb7ead Updated dependencies, copy returns WriteZero error when write EOF 2019-04-01 00:36:04 +08:00
zonyitoo 604d070138 Updated dependencies and release v1.7.0 2019-02-20 01:18:20 +08:00
zonyitoo 5a99c8a5c2 Updated dependencies 2019-02-14 10:19:36 +08:00
Linus Färnstrand 3d25b71a20 Remove extern crate statements (#143) 2019-01-26 00:30:06 +08:00
zonyitoo c7bd013beb Can always build with miscreant 2019-01-25 00:51:31 +08:00
mvd-ows 36d91c68ae Prepare crate for library use (#139)
* Move all process signal monitoring out of the library

* Run plugins with tokio-process and monitor them for exit
2019-01-25 00:05:55 +08:00
zonyitoo cecc62e4b4 [#85] Supporting shadowsocks-manager reports 2019-01-01 14:56:29 +08:00
zonyitoo 09c622ba8e Removed logs that no body cares 2018-12-31 23:36:05 +08:00
zonyitoo 5dec63a044 Removed all global state maps, which will allow starting multiple shadowsocks instances in one process 2018-12-30 16:02:52 +08:00
zonyitoo 876342737e Read config with json5 2018-12-30 03:34:17 +08:00
zonyitoo a1f1fb57b1 bump version to 1.7.0-alpha.17, updated dependencies 2018-11-20 01:04:42 +08:00
zonyitoo 73ea03ba6f Uses trust-dns on crates.io, build spin-rs on stable, fixed #129 2018-11-20 00:37:39 +08:00
Y. T. Chung c60869aa50 Refactor some boxed futures with impl Trait
- Replaced EncryptedWriterFut and DecryptedReaderFut with impl Trait
- Replaced boxed future in try_timeout and io_timeout with a static type
- Modified rustfmt configuration, fully reformatted
2018-10-01 10:32:04 +08:00
Y. T. Chung ba2cb079a9 Uses spinlock for resolver config 2018-09-23 23:13:11 +08:00
Y. T. Chung f2b402e126 [#119] Configurable DNS server 2018-09-23 17:43:47 +08:00
Y. T. Chung 8caac329b0 Impl trait ICE is fixed, updated dependencies 2018-09-01 01:41:44 +08:00
Y. T. Chung 59c8fc1d95 Bump version to v1.7.0-alpha.14, updated dependencies 2018-08-07 09:02:34 +08:00
Y. T. Chung 2f9e937a54 Bump version to v1.7.0-alpha.13, finally trust-dns-resolver has a proper release 2018-07-31 00:38:07 +08:00
Y. T. Chung 2a688c4b62 Exit gracefully if any servers exited, bump version to v1.7.0-alpha.12 2018-07-19 09:07:34 +08:00
Y. T. Chung 61db4ab6ef Bump version to v1.7.0-alpha.11 2018-07-18 22:45:21 +08:00
Y. T. Chung c6380f5343 Find a way to bypass impl Trait build failed 2018-07-14 23:26:52 +08:00
Y. T. Chung 759fe9d3dd Uses impl Future for dns 2018-07-12 08:35:35 +08:00
Y. T. Chung 908391ca34 Bump version to v1.7.0-alpha.10, updated dependencies 2018-07-12 01:01:17 +08:00
Y. T. Chung 302b477678 Updated dependencies 2018-06-28 23:29:30 +08:00
Y. T. Chung 03ce21ec01 Updated deps, subprocess impls Send on Windows 2018-06-06 23:01:48 +08:00
Y. T. Chung 6091ad2a2b Optimized aead encrypt code, uses buffer space directly without copy 2018-06-03 02:23:27 +08:00
Y. T. Chung e426ad9a30 Bump version to v1.7.0-alpha.9 2018-06-01 09:04:00 +08:00
Y. T. Chung 16cb100bd8 Travis installs libsodium with apt, test appveyor by preinstalled openssl 2018-05-31 07:53:02 +08:00
Y. T. Chung 4bdb41808d Test if subprocess Sendable Popen works in win32 2018-05-31 07:41:55 +08:00
Y. T. Chung 0acdb15029 Upgrade rand to v0.5 and use ThreadRng #111, updated to support the latest trust-dns AsyncResolver 2018-05-30 20:50:15 +08:00
Y. T. Chung 3055aab518 Replaced join_all with futures_unordered 2018-05-18 19:14:57 +08:00
Y. T. Chung b4f44f4850 Fixed bug, should not return error if peer_addr() failed, #106 2018-05-17 20:48:13 +08:00
Y. T. Chung 212735450a Fixed bug, UDP relay must be started before plugin 2018-05-17 01:40:53 +08:00
Y. T. CHUNG 8be6da51f3 Migrate tokio and uses new features (#108)
* Add #102 link in README

* Migrating to tokio, #100

* Migrated to tokio-signal v0.2, reformatted

* Should not call tokio::spawn before tokio::run

* Build nightly and stable with different image tag

* Removed unnecessary rustup install

* Renamed version to v1.7.0-alpha

* Removed deprecated calls of Buf

* Updated dependencies

* [#106] Fixed bug, should not hold UDP connections forever

* Lower info log to debug

* Bump version to v1.7.0-alpha.2

* Implement a simple DNS relay server, bump version to v1.7.0-alpha.3

* Better logging

* Fixed build on travis

* Add elapsed time in log

* Should not exit if handler return error

* reformatted

* Add test for DNS

* Updated ssdns param

* Use `trust-dns` and impl Trait
1. Replaced `ToSocketAddrs` with `trust-dns`
2. Uses impl Trait for functions
3. Updated dependencies
4. Fixed bugs

* Bug fixed, logging crate in ssdns
2018-05-16 00:03:50 +08:00
Y. T. Chung 34313e6202 Updated deps, optimize err log 2018-03-04 01:43:23 +08:00
Y. T. Chung eb6c080dca [#94] Properly show how to use make to install, updated dependencies 2018-02-12 22:56:10 +08:00
Y. T. Chung feb2a93005 Bump version to v1.6.11, update more deps 2018-01-14 17:57:20 +08:00
quininer 32d5a2d9e9 update dependencies (#91)
update dependencies and fix #90
2018-01-08 21:44:35 +08:00