zonyitoo
b226d2a50d
[ #273 ] Use AtomicUsize for maximum compatibility
2020-08-06 22:10:22 +08:00
zonyitoo
23c2695b3d
Support mimalloc and tcmalloc
2020-08-04 00:08:49 +08:00
Stzx
f6565fb948
Refactor some code
2020-08-03 23:46:50 +08:00
zonyitoo
357e1a06f5
Uses tokio *_buf APIs for better styling, kill plugins when Dropped
2020-08-03 02:09:17 +08:00
zonyitoo
7eac5416b3
Optimize ring AEAD cipher data copy
2020-07-24 19:22:07 +08:00
Max Lv
e39de3416f
Remove the VPN option hack
2020-07-23 11:05:41 +08:00
Max Lv
edf69098f4
Fix the tx/rx update in ProxyStream
2020-07-20 10:37:35 +08:00
Max Lv
b56eaac692
Revert "Fix tx/rx order for android RPC"
...
This reverts commit 205eaa95ad .
2020-07-20 10:37:35 +08:00
zonyitoo
5324ab7829
Removed unnecessary ACL cache
2020-07-13 23:03:14 +08:00
zonyitoo
1f29c73111
fix #277 , compilation error for feature=local-dns-relay
2020-07-07 01:47:22 +08:00
zonyitoo
ad12d59d12
AEAD TCP protocol should check the reserved higher 2 bits
...
- https://shadowsocks.org/en/spec/AEAD-Ciphers.html
- Higher 2 bits are reserved for future use
2020-07-04 22:11:43 +08:00
zonyitoo
a940a4085f
[ #272 ] Support customizing manager created server's bind address
2020-06-28 21:05:18 +08:00
zonyitoo
2765766772
Print error when server exited unexpectly
2020-06-21 22:18:22 +08:00
zonyitoo
a27c3902e0
Do not panic for listen error
2020-06-21 22:03:41 +08:00
zonyitoo
1a9529b43f
Add necessary INFO log for ssmanager
2020-06-20 10:23:30 +08:00
zonyitoo
66fcb5947b
User abortable for killing servers
2020-06-20 02:23:28 +08:00
zonyitoo
c84387dc8c
Cache recently ACL checking results
...
ACL checking may requires lots of calculation and network I/O (DNS resolution)
2020-06-15 09:13:55 +08:00
zonyitoo
d3e2922120
Logging elapse time for DNS resolving and ACL checking
...
fix #269
2020-06-11 22:56:06 +08:00
zonyitoo
edab23bf94
Enable jemalloc by feature. Enable parking_lot feature for tokio
...
ref: #174
2020-06-09 23:08:36 +08:00
zonyitoo
d231c7f3fe
Direct send for none ciphers, prevent unnecessary data copy
2020-06-07 12:38:37 +08:00
Taiki Endo
34f1728cfb
Remove uses of pin_project::project attribute
...
pin-project will deprecate the project attribute due to some unfixable
limitations.
Refs: https://github.com/taiki-e/pin-project/issues/225
2020-06-06 13:44:30 +08:00
zonyitoo
62832b9ad9
[ #149 ] Setting timeout, udp_timeout, udp_max_associations from opt
...
Add ManagerConfig for encapsulating add manager's options
Removed Config.timeout, servers should always use ServerConfig.timeout
2020-06-01 21:55:00 +08:00
zonyitoo
f9ed9d35ea
Fixed error messages
2020-06-01 00:09:27 +08:00
zonyitoo
07307fc4e8
[ #260 ] Support HTTPS local with rustls
2020-06-01 00:02:07 +08:00
zonyitoo
5a1d9efd83
[ #260 ] Support HTTPS local server with native-tls
2020-05-31 22:50:17 +08:00
zonyitoo
ab41fbcf17
Trim IPv6 host with trim_end_matches
2020-05-31 12:40:10 +08:00
zonyitoo
99fb4341d2
Preallocate buffer with Vec::with_capacity
2020-05-30 00:54:32 +08:00
zonyitoo
4140b21a4a
Proxies everything if there is no ACL configured
...
Avoid creating an useless socket for bypass addresses
2020-05-30 00:40:20 +08:00
zonyitoo
1b6b0366fb
Hide all socks4 implementations behind feature
2020-05-27 01:07:30 +08:00
zonyitoo
5ef6c8821e
Revert "UDP associations' default timeout to be 15 seconds"
...
This reverts commit 98474e2329 .
2020-05-25 09:32:46 +08:00
zonyitoo
98474e2329
UDP associations' default timeout to be 15 seconds
...
ref #262
2020-05-24 16:22:17 +08:00
zonyitoo
1f75f7a6b0
Optimized UDP association debug log
2020-05-24 16:12:59 +08:00
zonyitoo
688b4f235e
More specific log for association closing
2020-05-24 11:24:49 +08:00
zonyitoo
086f35eb63
associate_with_acl also requires connect()
...
fixed tests
2020-05-24 04:13:27 +08:00
Mygod
5ddaf21447
Connect UDP sockets
...
Fixes #263 .
2020-05-23 13:38:01 -04:00
zonyitoo
3b47fa67fa
Unified server and local association manager implementation
2020-05-24 01:03:38 +08:00
zonyitoo
b3052199df
Encapsulate ProxyAssociation management logic
2020-05-24 00:25:30 +08:00
zonyitoo
520018d30a
Add socks version in INFO
2020-05-22 21:49:05 +08:00
Mygod
4a1312c862
Fix build
2020-05-22 16:03:46 +08:00
Mygod
7917683121
Reduce unnecessary cloning
2020-05-22 16:03:46 +08:00
Mygod
69b0370441
Refine cache key for assoc_map
2020-05-21 22:06:34 +08:00
Mygod
cea84e1690
Remove unnecessary wakeups from UDP
2020-05-21 22:06:34 +08:00
Mygod
ab80e40dbb
Warn when using tokio DNS resolver
...
Fixes #208 .
2020-05-21 22:04:24 +08:00
zonyitoo
227cf267be
Support SOCKS4/4a protocol
...
fix #233
2020-05-20 00:36:35 +08:00
Mygod
f990462858
Support MX and NS records
2020-05-17 22:04:12 +08:00
Mygod
9a1b34f88e
Check rec.name() in answers
2020-05-17 22:04:12 +08:00
Mygod
59d1535e18
Be more conservative when skipping resolving
...
As we examine CNAME records in answer section and possibly A/AAAA records in additional section, we should only skip the second stage only if the entire ACL is empty.
2020-05-17 09:32:40 +08:00
zonyitoo
ce1e58641d
Fixed typo
2020-05-16 01:37:41 +08:00
zonyitoo
c825503b09
[ #252 ] Changed config name to udp_max_associations
2020-05-15 23:53:07 +08:00
Alex
aa99974706
Add option for max number of UDP associations
2020-05-15 23:39:53 +08:00