diff options
author | fokx | 2023-06-18 22:41:23 +0800 |
---|---|---|
committer | fokx | 2023-06-18 22:41:23 +0800 |
commit | f924017c81f887aa9dae00d655275944d7ce3690 (patch) | |
tree | af6bd50e94c0dc20cc07b9534725e59433d221c4 | |
parent | ec156192455db8deb2d5ffc5b47ad697e315b817 (diff) | |
download | aur-f924017c81f887aa9dae00d655275944d7ce3690.tar.gz |
breaking update: 1.0.0; patch tuic-server: socket.set_only_v6
-rw-r--r-- | .SRCINFO | 10 | ||||
-rw-r--r-- | PKGBUILD | 15 | ||||
-rw-r--r-- | client.json | 57 | ||||
-rw-r--r-- | server.json | 51 | ||||
-rw-r--r-- | tuic.patch | 34 | ||||
-rw-r--r-- | tuicc@.service | 2 |
6 files changed, 131 insertions, 38 deletions
@@ -1,6 +1,6 @@ pkgbase = tuic pkgdesc = Delicately-TUICed 0-RTT proxy server and client - pkgver = 0.8.5 + pkgver = 1.0.0 pkgrel = 1 url = https://github.com/EAimTY/tuic arch = x86_64 @@ -13,11 +13,13 @@ pkgbase = tuic source = tuic.sysusers source = tuicc@.service source = tuics@.service + source = tuic.patch b2sums = SKIP - b2sums = d471a743a0b9dd3f58ace81ebea40cf42812b0d980f72fdb358452de256d65b064e9b427d9ad528abd6b23ceadfca758ec0e7426e69c6299ae4202d4daf6d57d - b2sums = 2da39cc99b576ac0c3052489d91a01623aee24dbf835a8ef96e2095a19c9505bc78b63eadc9e5f79937737e02be0292894397e14a8e4da73fbab30d47004a50e + b2sums = 061a71643cd521d5224616805aba83c5887c9384156c5ab0c074fe7f5f873b33b8c8fdef379f67ef41e8c88437564aeb285e912d58549cb914acebd17726898e + b2sums = c07bc16b05e0a4ebca255b7680d48d6281d37d6dbe40fcf79ece13fa2aa0ef17907c064f2a18fbdfb2bb39e565b43e5bfccdf0c69d04bbd27b5fddef94885287 b2sums = 6f65065fff93d97ff528aafbf4d5b891587263162003681c8ec59f932673d4484237cbea4a32680d1c7d3d78d97ccfd9ea8d816bf740dd638929df3a5ad88034 - b2sums = ee32f841a33e3c71bc957ef622fdc93fc4779b0cb593ddae0c85e4d573e2339f0a0b2630874a504bb180cafcd3b4229bdcefff349ad4f46466d49539693036a4 + b2sums = 40a4ff7d141ce0b9fffbc3bccae4bb24f12b0991f75e71e914d289d9ac52e921b9b40b745b6bdf7b0a9676892eef537e707f2625dd3b20cea26695855ef7c0d2 b2sums = 955d2447f08f6762ba23f67796b34bba466dc8860d389fd7899ac0b68ac9153770757205d965056a5161b7515042a722a7dd683149b3dee3a777453ec2b2b34d + b2sums = 81ca29b186201e11656e306e39bdf15397aaf9cf291bed17c0986853a25161f99e91efcd9a629ca5b79fe954d5097ff975bd84c4c73be43480c4934fa77b226f pkgname = tuic @@ -1,7 +1,7 @@ # Maintainer: soh @ AUR pkgname=tuic -pkgver=0.8.5 +pkgver=1.0.0 pkgrel=1 pkgdesc='Delicately-TUICed 0-RTT proxy server and client' arch=('x86_64') @@ -15,19 +15,22 @@ source=("${pkgname}::git+$url" tuic.sysusers tuicc@.service tuics@.service + tuic.patch ) b2sums=('SKIP' - 'd471a743a0b9dd3f58ace81ebea40cf42812b0d980f72fdb358452de256d65b064e9b427d9ad528abd6b23ceadfca758ec0e7426e69c6299ae4202d4daf6d57d' - '2da39cc99b576ac0c3052489d91a01623aee24dbf835a8ef96e2095a19c9505bc78b63eadc9e5f79937737e02be0292894397e14a8e4da73fbab30d47004a50e' + '061a71643cd521d5224616805aba83c5887c9384156c5ab0c074fe7f5f873b33b8c8fdef379f67ef41e8c88437564aeb285e912d58549cb914acebd17726898e' + 'c07bc16b05e0a4ebca255b7680d48d6281d37d6dbe40fcf79ece13fa2aa0ef17907c064f2a18fbdfb2bb39e565b43e5bfccdf0c69d04bbd27b5fddef94885287' '6f65065fff93d97ff528aafbf4d5b891587263162003681c8ec59f932673d4484237cbea4a32680d1c7d3d78d97ccfd9ea8d816bf740dd638929df3a5ad88034' - 'ee32f841a33e3c71bc957ef622fdc93fc4779b0cb593ddae0c85e4d573e2339f0a0b2630874a504bb180cafcd3b4229bdcefff349ad4f46466d49539693036a4' - '955d2447f08f6762ba23f67796b34bba466dc8860d389fd7899ac0b68ac9153770757205d965056a5161b7515042a722a7dd683149b3dee3a777453ec2b2b34d') + '40a4ff7d141ce0b9fffbc3bccae4bb24f12b0991f75e71e914d289d9ac52e921b9b40b745b6bdf7b0a9676892eef537e707f2625dd3b20cea26695855ef7c0d2' + '955d2447f08f6762ba23f67796b34bba466dc8860d389fd7899ac0b68ac9153770757205d965056a5161b7515042a722a7dd683149b3dee3a777453ec2b2b34d' + '81ca29b186201e11656e306e39bdf15397aaf9cf291bed17c0986853a25161f99e91efcd9a629ca5b79fe954d5097ff975bd84c4c73be43480c4934fa77b226f') prepare() { cd $pkgname git submodule sync --recursive; git submodule foreach -q git config remote.origin.url; git submodule update --init --recursive --remote - git checkout $pkgver + patch --forward --strip=1 --input="${srcdir}/tuic.patch" + # git checkout $pkgver } build() { diff --git a/client.json b/client.json index 0f8374702615..677356eb22f8 100644 --- a/client.json +++ b/client.json @@ -1,22 +1,51 @@ { "relay": { - "server": "<my server domain>", - "port": 443, - "token": "mypassword", - "ip": "<my server ip>", + "server": "example.com:443", + + "uuid": "00000000-0000-0000-0000-000000000000", + + "password": "PASSWORD", + + "ip": "127.0.0.1", + + "certificates": ["PATH/TO/CERTIFICATE_1", "PATH/TO/CERTIFICATE_2"], + "udp_relay_mode": "native", - "congestion_controller": "bbr", - "heartbeat_interval": 10000, - "alpn": ["h3"], + + "congestion_control": "cubic", + + "alpn": ["h3", "spdy/3.1"], + + "zero_rtt_handshake": false, + "disable_sni": false, - "reduce_rtt": false, - "request_timeout": 8000, - "max_udp_relay_packet_size": 1500 + + "timeout": "8s", + + "heartbeat": "3s", + + "disable_native_certs": false, + + "send_window": 16777216, + + "receive_window": 8388608, + + "gc_interval": "3s", + + "gc_lifetime": "15s" }, + "local": { - "port": 1080, - "ip": "127.0.0.1" + "server": "[::]:1080", + + "username": "USERNAME", + + "password": "PASSWORD", + + "dual_stack": true, + + "max_packet_size": 1500 }, - "log_level": "info" -} + "log_level": "warn" +} diff --git a/server.json b/server.json index 837e1edd6bb5..a1de056e81af 100644 --- a/server.json +++ b/server.json @@ -1,15 +1,40 @@ { - "port": 443, - "token": ["myPassword1", "myPassword2"], - "certificate": "/etc/tuic/cer", - "private_key": "/etc/tuic/key", - - "ip": "0.0.0.0", - "congestion_controller": "bbr", - "max_idle_time": 15000, - "authentication_timeout": 1000, - "alpn": ["h3"], - "max_udp_relay_packet_size": 1500, - "log_level": "info" -} + "server": "[::]:443", + + "users": { + "00000000-0000-0000-0000-000000000000": "PASSWORD_0", + "00000000-0000-0000-0000-000000000001": "PASSWORD_1" + }, + + "certificate": "PATH/TO/CERTIFICATE", + + "private_key": "PATH/TO/PRIVATE_KEY", + + "congestion_control": "cubic", + + "alpn": ["h3", "spdy/3.1"], + + "udp_relay_ipv6": true, + + "zero_rtt_handshake": false, + + "dual_stack": true, + "auth_timeout": "3s", + + "task_negotiation_timeout": "3s", + + "max_idle_time": "10s", + + "max_external_packet_size": 1500, + + "send_window": 16777216, + + "receive_window": 8388608, + + "gc_interval": "3s", + + "gc_lifetime": "15s", + + "log_level": "warn" +} diff --git a/tuic.patch b/tuic.patch new file mode 100644 index 000000000000..95ef65c9a1cb --- /dev/null +++ b/tuic.patch @@ -0,0 +1,34 @@ +Only in tuic.new: Cargo.lock +Only in tuic.new: .idea +Only in tuic.new: target +diff --unified --recursive --text tuic.orig/tuic-server/src/server.rs tuic.new/tuic-server/src/server.rs +--- tuic.orig/tuic-server/src/server.rs 2023-06-18 22:32:05.143833089 +0800 ++++ tuic.new/tuic-server/src/server.rs 2023-06-18 22:39:30.263162332 +0800 +@@ -17,6 +17,7 @@ + time::Duration, + }; + use uuid::Uuid; ++use log::error; + + pub struct Server { + ep: Endpoint, +@@ -83,11 +84,16 @@ + .map_err(|err| Error::Socket("failed to create endpoint UDP socket", err))?; + + if let Some(dual_stack) = cfg.dual_stack { +- socket.set_only_v6(!dual_stack).map_err(|err| { +- Error::Socket("endpoint dual-stack socket setting error", err) +- })?; ++ match socket.set_only_v6(!dual_stack){ ++ Ok(()) => {} ++ Err(err) => { ++ error!("endpoint dual-stack socket setting error"); ++ error!("{err}"); ++ } ++ } + } + ++ + socket + .bind(&SockAddr::from(cfg.server)) + .map_err(|err| Error::Socket("failed to bind endpoint UDP socket", err))?; diff --git a/tuicc@.service b/tuicc@.service index f3426c4287f0..1d141f1efba1 100644 --- a/tuicc@.service +++ b/tuicc@.service @@ -7,7 +7,7 @@ Type=simple User=tuic Restart=on-failure RestartSec=5s -ExecStart=/usr/bin/tuic-client-0.8 -c /etc/tuic/%i.json +ExecStart=/usr/bin/tuic-client -c /etc/tuic/%i.json # Proc filesystem ProcSubset=pid ProtectProc=invisible |