Proto commits in XTLS/Xray-core

These commits are when the Protocol Buffers files have changed: (only the last 100 relevant commits are shown)

Commit:2dc6a34
Author:风扇滑翔翼
Committer:GitHub

Do some rename

Commit:22463f3
Author:风扇滑翔翼
Committer:GitHub

Add classic UDP DNS support for ECH Config

Commit:c10e5f6
Author:风扇滑翔翼
Committer:GitHub

Add server support

Commit:a0721f5
Author:风扇滑翔翼
Committer:GitHub

ECH: client support TLS Encrypted Client Hello

Commit:5f3ae64
Author:风扇滑翔翼
Committer:GitHub

Sockopt: Allow `customSockopt` work for Windows & Darwin (#4576) * Sockopt: Add custom sockopt on Windows & Darwin * fix windows udp by the way * use resolved addr https://github.com/XTLS/Xray-core/pull/4504#issuecomment-2769153797

The documentation is generated from this commit.

Commit:e704882
Author:风扇滑翔翼
Committer:GitHub

Sockopt: Add custom sockopt on Windows & Darwin

The documentation is generated from this commit.

Commit:b585b26
Author:风扇滑翔翼
Committer:GitHub

Sockopt: Fix Windows UDP `interface` bind; Allow `customSockopt` work for UDP (#4504)

Commit:1067171
Author:patterniha
Committer:GitHub

DNS: Add `timeoutMs` for DnsServerObject (#4523)

Commit:6f8e253
Author:风扇滑翔翼
Committer:RPRX

DNS: Add `tag` for DnsServerObject (#4515) Closes https://github.com/XTLS/Xray-core/issues/4505

Commit:6a211a0
Author:patterniha
Committer:GitHub

DNS: Add `allowUnexpectedIPs` for DnsServerObject (#4497) Closes https://github.com/XTLS/Xray-core/issues/4424

Commit:414379c
Author:yuhan6665
Committer:yuhan6665

Add config proto

Commit:7f6a825
Author:风扇滑翔翼
Committer:GitHub

Do some rename

Commit:6d5be86
Author:风扇滑翔翼
Committer:GitHub

Add classic UDP DNS support for ECH Config

Commit:43b5782
Author:风扇滑翔翼
Committer:GitHub

Sockopt: Add dialTimeout

Commit:cab4321
Author:风扇滑翔翼
Committer:GitHub

Add server support

Commit:9bdf866
Author:风扇滑翔翼
Committer:GitHub

ECH: client support TLS Encrypted Client Hello

Commit:e466b04
Author:RPRX
Committer:GitHub

DNS DoH: Use Chrome's fingerprint & keepAlivePeriod, Add header padding by default https://github.com/XTLS/Xray-core/discussions/4430#discussioncomment-12374292

Commit:b9cb93d
Author:j3l11234
Committer:GitHub

Sockopt: Add `addressPortStrategy` (query SRV or TXT) (#4416) Co-authored-by: 风扇滑翔翼 <Fangliding.fshxy@outlook.com>

Commit:95c2113
Author:风扇滑翔翼
Committer:GitHub

Add sniff timeoit

Commit:4b01eb4
Author:风扇滑翔翼
Committer:GitHub

Metrics: Add direct listen (#4409)

Commit:e893fa1
Author:Maxim Plotnikov
Committer:GitHub

API: Add user IPs and access times tracking (#4360)

Commit:c6a31f4
Author:RPRX
Committer:GitHub

MITM: Allow using local received SNI in the outgoing `serverName` & `verifyPeerCertInNames` https://github.com/XTLS/Xray-core/issues/4348#issuecomment-2637370175 Local received SNI was sent by browser/app. In freedom RAW's `tlsSettings`, set `"serverName": "fromMitm"` to forward it to the real website. In freedom RAW's `tlsSettings`, set `"verifyPeerCertInNames": ["fromMitm"]` to use all possible names to verify the certificate.

Commit:2522cfd
Author:RPRX
Committer:GitHub

DNS DoH: Add h2c Remote mode (with TLS `serverNameToVerify`) https://github.com/XTLS/Xray-core/issues/4313#issuecomment-2609339864 Applies https://github.com/refraction-networking/utls/pull/161 Closes https://github.com/XTLS/Xray-core/issues/4313

Commit:ca9a902
Author:RPRX
Committer:GitHub

XHTTP server: Add `scStreamUpServerSecs`, enabled by default (#4306) Fixes https://github.com/XTLS/Xray-core/discussions/4113#discussioncomment-11682833

Commit:33186ca
Author:风扇滑翔翼
Committer:GitHub

Freedom noises: Change legacy variable name (#4238) Closes https://github.com/XTLS/Xray-core/issues/4237

Commit:369d894
Author:RPRX
Committer:GitHub

Sockopt config: Add `penetrate` for XHTTP U-D-S, Remove `tcpNoDelay` Now `sockopt` can be shared via `extra`, and be replaced with upload's forcibly. Closes https://github.com/XTLS/Xray-core/issues/4227

Commit:c55beec
Author:Fangliding

Add maxReuseTimes

Commit:4ce65fc
Author:RPRX
Committer:GitHub

XHTTP XMUX: `cMaxLifetimeMs` -> `hMaxReusableSecs`, Refactor default values "xmux": { "maxConcurrency": "16-32", "maxConnections": 0, "cMaxReuseTimes": 0, "hMaxRequestTimes": "600-900", "hMaxReusableSecs": "1800-3000", "hKeepAlivePeriod": 0 } Fixes https://github.com/XTLS/Xray-core/discussions/4113#discussioncomment-11685057

Commit:a7e1217
Author:风扇滑翔翼
Committer:GitHub

Add grpc multi conn

Commit:73e0d4a
Author:RPRX
Committer:GitHub

XHTTP XMUX: Add `hMaxRequestTimes` and `hKeepAlivePeriod` (#4163) Fixes https://github.com/XTLS/Xray-core/discussions/4113#discussioncomment-11492833

Commit:8cd9a74
Author:RPRX
Committer:GitHub

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

Commit:ae62a0f
Author:RPRX

Transport: Remove HTTP Migrated to XHTTP "stream-one" mode.

Commit:4f6f126
Author:hr567
Committer:GitHub

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>

Commit:c87cf8f
Author:风扇滑翔翼
Committer:RPRX

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>

Commit:8c11118
Author:yuhan6665

Add expectedResponseCode to BurstObservatory

Commit:817fa72
Author:RPRX
Committer:GitHub

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

Commit:5717774
Author:风扇滑翔翼
Committer:GitHub

TLS: Add CurvePreferences (to enable kyber768) (#3991) Co-authored-by: RPRX <63339210+RPRX@users.noreply.github.com>

Commit:bc4bf3d
Author:RPRX
Committer:GitHub

XHTTP: Add "stream-up" mode for client & server (#3994)

Commit:b98f29b
Author:zonescape
Committer:GitHub

Chore: Fix some comments (#3979)

Commit:2c72864
Author:Hossin Asaadi
Committer:GitHub

API: Add user online stats (#3637) * add statsUserOnline bool to policy * add OnlineMap struct to stats * apply UserOnline functionality to dispatcher * add statsonline api command * fix comments * Update app/stats/online_map.go Co-authored-by: mmmray <142015632+mmmray@users.noreply.github.com> * improve AddIP * regenerate pb --------- Co-authored-by: mmmray <142015632+mmmray@users.noreply.github.com>

Commit:85a1c33
Author:yuhan6665
Committer:GitHub

API: Add new Get Inbound User (#3644) * Add GetInboundUser in proto * Add get user logic for all existing inbounds * Add inbounduser command * Add option to get all users * Fix shadowsocks2022 config * Fix init users in shadowsocks2022 * Fix copy * Add inbound user count command This api costs much less than get inbound user, could be useful in some case * Update from latest main

Commit:b30e05d
Author:RPRX
Committer:GitHub

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

Commit:9bdf72d
Author:RPRX
Committer:GitHub

WireGuard config: Replace `kernelMode` with `noKernelTun` https://github.com/XTLS/Xray-core/pull/3871#issuecomment-2420770309

Commit:7086d28
Author:Kobe Arthur Scofield
Committer:GitHub

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

Commit:57a41f3
Author:Kobe Arthur Scofield
Committer:GitHub

Config: Remove more legacy fields (#3817)

Commit:f406b2d
Author:mmmray
Committer:GitHub

SplitHTTP client: Fix xmux config deserialization (#3827)

Commit:363e86c
Author:dragonbreath2000
Committer:GitHub

UDP noises: Add base64 and multi-packet support (#3794) https://github.com/XTLS/Xray-core/pull/3794#issuecomment-2351329251 --------- Co-authored-by: 风扇滑翔翼 <Fangliding.fshxy@outlook.com> Co-authored-by: mmmray <142015632+mmmray@users.noreply.github.com>

Commit:b1c6471
Author:ll11l1lIllIl1lll
Committer:GitHub

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>

Commit:3fed0c7
Author:风扇滑翔翼
Committer:GitHub

DNS outbound: Add blockTypes (#3812)

Commit:7496413
Author:Kobe Arthur Scofield
Committer:GitHub

Remove remnants of global `transport` (#3792) * Remove remenants * Generate pb.go * Remove function

Commit:a247997
Author:风扇滑翔翼
Committer:GitHub

Log: Add MaskAddress option to hide IP addresses (#3783) * Log: Add maskAddress option * Correct IPv6 subnet

Commit:f04cb0b
Author:Kobe Arthur Scofield
Committer:GitHub

Config: Remove some legacy fields from V2Ray 3.x era (#3776) https://github.com/XTLS/Xray-core/pull/3776#issue-2512316726

Commit:c0a98f7
Author:mmmray
Committer:GitHub

Transport: Remove DomainSocket (#3757) https://github.com/XTLS/Xray-core/pull/3755#issuecomment-2325533003

Commit:9a953c0
Author:mmmray
Committer:GitHub

Transport: Remove QUIC (#3754) https://github.com/XTLS/Xray-core/pull/3554#issuecomment-2236171077

Commit:002d08b
Author:dragonbreath2000
Committer:GitHub

UDP noise (#3711) * added udp noise * adding protobuf settings * freedom json parser and clean up * resolve confict * fix and clean up * use net.conn instead of packetconnwrapper * avoid constructing SequentialWriter directly --------- Co-authored-by: mmmray <142015632+mmmray@users.noreply.github.com>

Commit:a3b306a
Author:mmmray
Committer:GitHub

SplitHTTP: Replace responseOkPadding with xPaddingBytes (#3643)

Commit:4b7947c
Author:mmmray
Committer:GitHub

SplitHTTP server: add ok padding (#3614)

Commit:30af792
Author:mmmray
Committer:GitHub

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)

Commit:4531a7e
Author:lelemka0
Committer:GitHub

CertificateObject: Enable auto-reload for cacert & Add buildChain & Fixes (#3607)

Commit:60553a6
Author:RPRX
Committer:GitHub

SplitHTTP server: Add noSSEHeader https://github.com/XTLS/Xray-core/pull/3603#issuecomment-2254968219

Commit:59f6685
Author:mmmray
Committer:GitHub

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

Commit:8a4217f
Author:mmmray
Committer:GitHub

SplitHTTP client: Add minUploadInterval (#3592)

Commit:16de093
Author:MHSanaei
Committer:GitHub

Fix typos (#3527)

Commit:308f0c6
Author:风扇滑翔翼
Committer:GitHub

Add custom Sockopt support (#3517) * Add custom sockopt * Add custom level * Change field * Sth left

Commit:c10bd28
Author:mmmray
Committer:GitHub

Add SplitHTTP Transport (#3412)

Commit:447a49d
Author:nobody
Committer:GitHub

Add configuration item api->listen. (#3317) * add api.listen configuration item * add unit tests * typo --------- Co-authored-by: nobody <nobody@nowhere.mars>

Commit:dd16dce
Author:writegr
Committer:风扇滑翔翼

chore: fix some typos in comments Signed-off-by: writegr <wellweek@outlook.com>

Commit:fbc56b8
Author:Allo
Committer:yuhan6665

chore: remove the usage of some deprecated tls properties

Commit:e2302b4
Author:yuhan6665
Committer:RPRX

Update proto file for websocket and httpupgrade (breaking)

Commit:53e5814
Author:Hossin Asaadi
Committer:GitHub

API - Add | Remove Routing Rules (#3189) * add RuleTag to routing rules * add router pb commands * add and remove routing rules api * cleanup * fix * improve error msg * add append flag apply balancer config

Commit:9a619f9
Author:风扇滑翔翼
Committer:yuhan6665

Add support for HTTPupgrade custom headers

Commit:70a5fe9
Author:风扇滑翔翼
Committer:yuhan6665

Allow to send through random IPv6

Commit:657c5c8
Author:yuhan6665

Update HTTPUpgrade spelling and proto

Commit:bb48a20
Author:风扇滑翔翼
Committer:yuhan6665

Fix HTTPUpgrade transport register

Commit:18b823b
Author:RPRX
Committer:GitHub

HTTPUpgrade 0-RTT (#3152) * Add ed to enable HTTPUpgrade 0-RTT https://github.com/XTLS/Xray-core/issues/3128#issuecomment-2002563369 * WebSocket hub.go MaxHeaderBytes: 4096 -> 8192

Commit:173b034
Author:Eken Chan
Committer:yuhan6665

transport: add httpupgrade

Commit:7184a81
Author:RPRX
Committer:GitHub

Add Authority to gRPC Transport (#3076) Why couldn't you have Host, for the last three years?

Commit:fa5d7a2
Author:yuhan6665
Committer:GitHub

Least load balancer (#2999) * v5: Health Check & LeastLoad Strategy (rebased from 2c5a71490368500a982018a74a6d519c7e121816) Some changes will be necessary to integrate it into V2Ray * Update proto * parse duration conf with time.Parse() * moving health ping to observatory as a standalone component * moving health ping to observatory as a standalone component: auto generated file * add initialization for health ping * incorporate changes in router implementation * support principle target output * add v4 json support for BurstObservatory & fix balancer reference * update API command * remove cancelled API * return zero length value when observer is not found * remove duplicated targeted dispatch * adjust test with updated structure * bug fix for observer * fix strategy selector * fix strategy least load * Fix ticker usage ticker.Close does not close ticker.C * feat: Replace default Health Ping URL to HTTPS (#1991) * fix selectLeastLoad() returns wrong number of nodes (#2083) * Test: fix leastload strategy unit test * fix(router): panic caused by concurrent map read and write (#2678) * Clean up code --------- Co-authored-by: Jebbs <qjebbs@gmail.com> Co-authored-by: Shelikhoo <xiaokangwang@outlook.com> Co-authored-by: 世界 <i@sekai.icu> Co-authored-by: Bernd Eichelberger <46166740+4-FLOSS-Free-Libre-Open-Source-Software@users.noreply.github.com> Co-authored-by: 秋のかえで <autmaple@protonmail.com> Co-authored-by: Rinka <kujourinka@gmail.com>

Commit:3a99520
Author:Iain Lau
Committer:yuhan6665

Add PROXY Protocol support for freedom outbound

Commit:0ea2a50
Author:Qi Lin
Committer:yuhan6665

Add option `realitySettings.masterKeyLog`

Commit:6f092bd
Author:yuhan6665
Committer:GitHub

Add "masterKeyLog" in TLS config (#2758) * Add "enableMasterKeyLog" in TLS config Turn on the debug option for Wireshark to decrypt traffic * Change to "masterKeyLog" to configure a path

Commit:0ac7da2
Author:hax0r31337
Committer:GitHub

WireGuard Inbound (User-space WireGuard server) (#2477) * feat: wireguard inbound * feat(command): generate wireguard compatible keypair * feat(wireguard): connection idle timeout * fix(wireguard): close endpoint after connection closed * fix(wireguard): resolve conflicts * feat(wireguard): set cubic as default cc algorithm in gVisor TUN * chore(wireguard): resolve conflict * chore(wireguard): remove redurant code * chore(wireguard): remove redurant code * feat: rework server for gvisor tun * feat: keep user-space tun as an option * fix: exclude android from native tun build * feat: auto kernel tun * fix: build * fix: regulate function name & fix test

Commit:7523f7f
Author:yuhan6665
Committer:GitHub

统一 `domainStrategy` 行为. (#2720) * 统一 `domainStrategy` 行为. * Update proto --------- Co-authored-by: rui0572 <125641819+rui0572@users.noreply.github.com>

Commit:d9fd3f8
Author:yuhan6665
Committer:GitHub

Freedom xdomain strategy (#2719) * 统一 `domainStrategy` 行为. * aliases NG. * 化简. * 调整. * Let it crash. * Update proto --------- Co-authored-by: rui0572 <125641819+rui0572@users.noreply.github.com>

Commit:a109389
Author:yuhan6665
Committer:GitHub

Wireguard resolve strategy (#2717) * 增加 wireguard 出站选项 `resolveStrategy`. * They become a part of you. * 移除不必要的选项别名. * aliases NG. * 微调. --------- Co-authored-by: rui0572 <125641819+rui0572@users.noreply.github.com>

Commit:4f6042c
Author:cty123
Committer:yuhan6665

feat(dns): Support DNS queryStrategy config per NameServer.

Commit:c00e56c
Author:yylt
Committer:GitHub

Add `tcpMptcp` to `sockopt` (#2520)

Commit:f0f3b41
Author:RPRX
Committer:GitHub

Refactor: Fragmentation https://github.com/XTLS/Xray-core/commit/5f5ae375714abd67eb2f0a0f2e86410b6f29f7c2 https://github.com/XTLS/Xray-core/commit/9122d0f056ed5b0e6fc9b290fdc7b39f47b49a39

Commit:6d41944
Author:RPRX
Committer:GitHub

Clean unnecessary code in Trojan

Commit:667279a
Author:RPRX
Committer:yuhan6665

Add "nonIPQuery" to DNS outbound ("drop" by default) And fixed a memory leak And regenerated *.pb.go

Commit:9112cfd
Author:yuhan6665
Committer:GitHub

Clean legacy vmess (#2199) * Remove legacy Vmess * validators * protos

Commit:bf4b1fa
Author:yuhan6665
Committer:yuhan6665

Simplify http attrabute matching In the past, we use Starlark script, it is over engineered and barely used. By switching to simple key value string contains logic we can reduce core size about 0.7MB

Commit:c9f5171
Author:yuhan6665

Remove mtproto

Commit:5f5ae37
Author:sambali9
Committer:GitHub

Added tcp fragmentation for freedom outbound (#2021) * Added tcp fragmentation for freedom outbound * Added TCP_NODELAY to outbound sockopt * Changed fragment parameters to accept ranges and changed strategy to use length * Changed packetNumber to packets, supporting range. * Refactored the freedom fragment logic * Refine Write() --------- Co-authored-by: RPRX <63339210+RPRX@users.noreply.github.com>

Commit:dd81ad5
Author:xqzr
Committer:GitHub

Add `tcpMaxSeg` to `sockopt` (#2002)

Commit:837d7d8
Author:世界
Committer:世界

Add smux support

Commit:6032640
Author:世界
Committer:世界

Add tun support

Commit:90d915e
Author:yichya QC
Committer:yuhan6665

feat: add tcp_user_timeout ```json {"streamSettings":{"sockopt": {"tcpUserTimeout": 10000}}} ``` run `gofmt -w -s .` as well

Commit:06c9e50
Author:RPRX
Committer:GitHub

Add "xudpProxyUDP443" to Mux config & XUDP rejects UDP/443 traffic by default (client side, excluding reverse proxy)

Commit:24a2be4
Author:RPRX
Committer:GitHub

Replace "only" with "xudpConcurrency" in Mux config