RPRX and GitHub
ff8b66aacb
XHTTP client: scMaxEachPostBytes should be bigger than buf.Size (8192)
...
To avoid no size limit.
2024-12-18 13:25:34 +00:00
RPRX and GitHub
9dbdf92c27
XHTTP downloadSettings: Inherit sockopt if its own doesn't exist (e.g., in extra)
...
If you want `downloadSettings` to use its own `sockopt`, make sure that `extra` doesn't exist.
2024-12-18 11:22:29 +00:00
RPRX and GitHub
73e0d4a666
XHTTP XMUX: Add hMaxRequestTimes and hKeepAlivePeriod ( #4163 )
...
Fixes https://github.com/XTLS/Xray-core/discussions/4113#discussioncomment-11492833
2024-12-15 05:43:10 +00:00
RPRX and GitHub
7463561856
XHTTP client: Add decideHTTPVersion() and more logs
...
https://github.com/XTLS/Xray-core/pull/4150#issuecomment-2537981368
2024-12-12 12:19:18 +00:00
RPRX and GitHub
8cd9a74376
XHTTP client: Refactor "packet-up" mode, chasing "stream-up" ( #4150 )
...
* Add wroteRequest (waiting for new quic-go)
* Use XTLS/quic-go instead
* Client doesn't need `scMaxConcurrentPosts` anymore
* GotConn is available in H3
* `scMaxConcurrentPosts` -> `scMaxBufferedPosts` (server only, 30 by default)
Fixes https://github.com/XTLS/Xray-core/issues/4100
2024-12-11 14:05:39 +00:00
Andi and RPRX
6be3c35db8
Chore: "io/ioutil" -> "io" ( #4143 )
...
Signed-off-by: ChengenH <hce19970702@gmail.com >
2024-12-11 02:02:23 +00:00
RPRX and GitHub
a2b773135a
XHTTP, WS, HU: Forbid "host" in headers, read serverName instead ( #4142 )
...
WebSocket's config files should be updated ASAP.
2024-12-11 00:58:14 +00:00
RPRX and GitHub
98a72b6fb4
v24.11.30
...
REALITY NFT: https://opensea.io/assets/ethereum/0x5ee362866001613093361eb8569d59c4141b76d1/2
2024-11-30 04:16:35 +00:00
4f6f12616c
WebSocket config: Add heartbeatPeriod for client & server ( #4065 )
...
https://github.com/XTLS/Xray-core/pull/4065#issuecomment-2502627154
---------
Co-authored-by: RPRX <63339210+RPRX@users.noreply.github.com >
2024-11-29 02:08:08 +00:00
风扇滑翔翼 and RPRX
c87cf8ff52
XHTTP config: Add keepAlivePeriod for client ( #4075 )
...
Closes https://github.com/XTLS/Xray-core/issues/4053
---------
Co-authored-by: RPRX <63339210+RPRX@users.noreply.github.com >
2024-11-29 02:05:11 +00:00
RPRX and GitHub
f7bd98b13c
XHTTP: Add "stream-one" mode for client & server ( #4071 )
...
""Breaking"": Client uses "stream-one" mode by default when using **REALITY** ("stream-up" if "downloadSettings" exists)
2024-11-27 20:19:18 +00:00
RPRX and GitHub
817fa72874
XHTTP client: Add gRPC header to "stream-up" mode by default ( #4042 )
...
""Breaking"": Client uses "stream-up" mode by default when using **TLS H2** or REALITY
2024-11-21 05:45:49 +00:00
RPRX and GitHub
1f570d9cef
XHTTP test: Fix Test_maxUpload
...
https://github.com/XTLS/Xray-core/pull/3260#issuecomment-2481946715
2024-11-18 04:53:21 +00:00
RPRX and GitHub
2d7b0e8cd4
XHTTP client: Fix upload issue in "packet-up" mode inherited from SplitHTTP
...
Fixes https://github.com/XTLS/Xray-core/issues/3972
2024-11-17 06:03:25 +00:00
RPRX and GitHub
bc4bf3d38f
XHTTP: Add "stream-up" mode for client & server ( #3994 )
2024-11-09 11:05:41 +00:00
RPRX and GitHub
6877ca5201
XHTTP client: Allow different paths in U-D-S ( #3977 )
2024-11-07 03:50:28 +00:00
RPRX and GitHub
9fbb6fbb3b
XHTTP client: Move dest2 into MemoryStreamConfig as well
2024-11-04 05:00:18 +00:00
RPRX and GitHub
e3276df725
XHTTP client: Enable XMUX for download in U-D-S ( #3965 )
2024-11-03 07:25:41 +00:00
RPRX and GitHub
b30e05d1bc
XHTTP: The real upload / download splitting ( #3955 )
...
* SplitHTTP client: Add real upload / download splitting
* Transport: Add XHTTP as an alias of SplitHTTP
* XHTTP config: Use `downloadSettings` instead
2024-10-31 07:31:19 +00:00
mmmray and GitHub
e733148c0b
REALITY: Unblock SplitHTTP transport ( #3816 )
...
https://github.com/XTLS/Xray-core/pull/3816#issuecomment-2445694775
2024-10-30 02:31:05 +00:00
RPRX
47fad1fbfd
Chore: Generate *.pb.go files with protoc v5.28.2
...
Download https://github.com/protocolbuffers/protobuf/releases/tag/v28.2
go install google.golang.org/protobuf/cmd/protoc-gen-go@v1.35 .1
go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@v1.5.1
(Xray-core/) go run ./infra/vprotogen
2024-10-16 04:06:21 +00:00
yuhan6665 and GitHub
3632e83faa
Transport: Add HTTP3 to HTTP ( #3819 )
2024-09-26 01:29:41 +00:00
Kobe Arthur Scofield and GitHub
7086d286be
Remove legacy code ( #3838 )
...
* Add feature migration notice
* Remove legacy code of transport processing
* Clear legacy proto field
* Fix missing
* Unify protocolname
* Test remove
* Supressor
* Weird code
* Remove errorgen related comments
2024-09-23 11:28:19 -04:00
Lumière Élevé and GitHub
acbf36e21b
SplitHTTP server: Add global CORS headers for browser dialer ( #3830 )
2024-09-20 09:55:54 +02:00
mmmray and GitHub
f406b2dee0
SplitHTTP client: Fix xmux config deserialization ( #3827 )
2024-09-19 00:45:39 +00:00
b1c6471eeb
SplitHTTP client: Add xmux (multiplex controller) for H3 & H2 ( #3613 )
...
https://github.com/XTLS/Xray-core/pull/3613#issuecomment-2351954957
Closes https://github.com/XTLS/Xray-core/issues/3560#issuecomment-2247495778
---------
Co-authored-by: mmmray <142015632+mmmray@users.noreply.github.com >
2024-09-16 12:42:01 +00:00
Dmitry Anderson and GitHub
a931507dd6
SplitHTTP: Read and validate HTTP/1.1 responses ( #3797 )
2024-09-16 12:33:03 +00:00
mmmray and GitHub
ab3c00e96b
SplitHTTP: Remove ok compatibility logic ( #3753 )
...
Remove some code that was added to maintain compatibility with older
Xray versions. This breaks compatibility with Xray-core v1.8.23 or older.
2024-09-03 02:25:15 +00:00
mmmray and GitHub
83eef6bc1f
SplitHTTP: Fix connection leaks and crashes ( #3710 )
2024-08-22 17:07:57 +02:00
mmmray and GitHub
2be03c56cb
Pin protobuf packages ( #3715 )
...
* Pin protobuf packages
It happened in the past that I ran with the wrong protobuf version
installed locally, and apparently there is even still some file wrong in
splithttp. Fix this issue once and for all.
* bump protobuf packages
* Revert "bump protobuf packages"
This reverts commit 7a3509346a .
* Revert "Revert "bump protobuf packages""
This reverts commit bb79707d15 .
* fix deprecated grpc usage
2024-08-22 10:18:36 -04:00
mmmray and GitHub
160316d53c
SplitHTTP: Do not produce too large upload ( #3691 )
2024-08-17 13:01:58 +02:00
mmmray and GitHub
498d8eb3cc
DialerProxy: Fix SplitHTTP H3 dialerProxy ( #3570 )
...
* wip
* wip
* formatting
* cnc connection no longer needs to be a Packetconn
* dialerProxy: do not cancel connection when Dial context is cancelled
2024-08-11 12:58:52 -04:00
Lumière Élevé and GitHub
0c7303960a
SplitHTTP server: Add "Cache-Control: no-store" to GET response ( #3652 )
...
https://github.com/XTLS/Xray-core/pull/3652#issuecomment-2282308407
2024-08-10 23:59:42 +00:00
mmmray and GitHub
513182adf3
SplitHTTP server: Only "ok" to older clients ( #3671 )
...
https://github.com/XTLS/Xray-core/pull/3643#issuecomment-2282304185
2024-08-10 23:56:25 +00:00
mmmray and GitHub
a3b306aaa4
SplitHTTP: Replace responseOkPadding with xPaddingBytes ( #3643 )
2024-08-10 21:47:42 +00:00
mmmray and GitHub
85e2ebc6f7
SplitHTTP client: Raise idle timeout to 5 minutes, Add h*KeepalivePeriod ( #3624 )
2024-08-10 05:40:48 +00:00
mmmray and GitHub
4b7947cca9
SplitHTTP server: add ok padding ( #3614 )
2024-08-02 03:16:19 +02:00
mmmray and GitHub
30af792777
SplitHTTP: Rename three options & Reduce server defaults ( #3611 )
...
* maxUploadSize -> scMaxEachPostBytes, default is 1MB on both sides (was 2MB on the server)
* minUploadIntervalMs -> scMinPostsIntervalMs, default is 30ms on the client (no server support for now)
* maxConcurrentUploads -> scMaxConcurrentPosts, default is 100 on both sides (was 200 on the server)
2024-07-29 10:10:29 +00:00
mmmray and GitHub
33daa0c94b
SplitHTTP: Fix wrong config deserialization ( #3610 )
...
Testing was conducted only using explicit parameters, and using
testsuite. However, when the parameters are not explicitly set in JSON
config, it seems that `c.MaxUploadSize` will contain `RandRangeConfig {
From: 0, To: 0 }` instead of `nil`, which breaks upload entirely.
2024-07-29 08:50:59 +00:00
RPRX and GitHub
60553a6c26
SplitHTTP server: Add noSSEHeader
...
https://github.com/XTLS/Xray-core/pull/3603#issuecomment-2254968219
2024-07-29 06:32:04 +00:00
mmmray and GitHub
59f6685774
SplitHTTP: More range options, change defaults, enforce maxUploadSize, fix querystring behavior ( #3603 )
...
* maxUploadSize and maxConcurrentUploads can now be ranges on the client
* maxUploadSize is now enforced on the server
* the default of maxUploadSize is 2MB on the server, and 1MB on the client
* the default of maxConcurrentUploads is 200 on the server, and 100 on the client
* ranges on the server are treated as a single number. if server is configured as `"1-2"`, server will enforce `2`
* querystrings in `path` are now handled correctly
2024-07-29 04:35:17 +00:00
mmmray and GitHub
8a4217fdf5
SplitHTTP client: Add minUploadInterval ( #3592 )
2024-07-27 12:52:36 +00:00
mmmray and GitHub
2becdd6414
SplitHTTP server: Fix panic during concurrent Close and Push ( #3593 )
...
When Close and Push are called concurrently, it may happen that Push attempts to write to an already-closed channel, and trigger a panic.
From a user perspective, it results in logs like this:
http: panic serving 172.19.0.6:50476: send on closed channel
It's probably triggered when download is closed at the same time an upload packet is submitted.
These panics don't crash the server and the inbound is still usable.
2024-07-26 04:36:55 +02:00
edae38c620
Fix SplitHTTP Unix domain socket ( #3577 )
...
Co-authored-by: mmmray <142015632+mmmray@users.noreply.github.com >
2024-07-22 22:19:31 +02:00
RPRX and GitHub
0f65aa8ed8
Fix SplitHTTP H3 waited for downResponse before uploading
...
https://github.com/XTLS/Xray-core/issues/3560#issuecomment-2241750579
2024-07-21 20:45:05 +00:00
RPRX and GitHub
22535d8643
Fix SplitHTTP H3 didn't always reuse QUIC connection
...
https://github.com/XTLS/Xray-core/issues/3560#issuecomment-2241531502
2024-07-21 08:55:03 +00:00
mmmray
529f206d33
Fix serverside TLS support of SplitHTTP H1/H2 ( #3567 )
...
Fix #3566
Also update testsuite so that all tests read and write some data. Opening a connection is not enough to trigger connection errors, because the connection is so lazy.
2024-07-20 19:35:24 -05:00
964859b4bc
SplitHTTP: Remove unnecessary keepalives ( #3565 )
...
Remove keep alive since quic-go/http3 doesn't support stream reuse
Discussion see https://t.me/projectXray/3782492
Co-authored-by: Fangliding <Fangliding.fshxy@outlook.com >
Co-authored-by: xqzr <34030394+xqzr@users.noreply.github.com >
Co-authored-by: ll11l1lIllIl1lll <88377095+ll11l1lIllIl1lll@users.noreply.github.com >
2024-07-20 19:34:57 -05:00
a0040f13dd
SplitHTTP: Server supports HTTP/3 ( #3554 )
...
Co-authored-by: mmmray <142015632+mmmray@users.noreply.github.com >
2024-07-19 17:53:47 +00:00
ll11l1lIllIl1lll and GitHub
d8994b7603
Fix SplitHTTP H3 crash on v2rayNG ( #3559 )
...
Fixes https://github.com/XTLS/Xray-core/issues/3556
2024-07-19 17:52:34 +00:00