Skip to content

Commit

Permalink
Transport: Add RAW as an alias of TCP (XTLS#3852)
Browse files Browse the repository at this point in the history
  • Loading branch information
RPRX authored and dragonbreath2000 committed Dec 11, 2024
1 parent ba8089a commit 1f2169a
Showing 1 changed file with 6 additions and 2 deletions.
8 changes: 6 additions & 2 deletions infra/conf/transport_internet.go
Original file line number Diff line number Diff line change
Expand Up @@ -655,7 +655,7 @@ type TransportProtocol string
// Build implements Buildable.
func (p TransportProtocol) Build() (string, error) {
switch strings.ToLower(string(p)) {
case "tcp":
case "raw", "tcp":
return "tcp", nil
case "kcp", "mkcp":
return "mkcp", nil
Expand Down Expand Up @@ -794,6 +794,7 @@ type StreamConfig struct {
Security string `json:"security"`
TLSSettings *TLSConfig `json:"tlsSettings"`
REALITYSettings *REALITYConfig `json:"realitySettings"`
RAWSettings *TCPConfig `json:"rawSettings"`
TCPSettings *TCPConfig `json:"tcpSettings"`
KCPSettings *KCPConfig `json:"kcpSettings"`
WSSettings *WebSocketConfig `json:"wsSettings"`
Expand Down Expand Up @@ -850,10 +851,13 @@ func (c *StreamConfig) Build() (*internet.StreamConfig, error) {
default:
return nil, errors.New(`Unknown security "` + c.Security + `".`)
}
if c.TCPSettings == nil {
c.TCPSettings = c.RAWSettings
}
if c.TCPSettings != nil {
ts, err := c.TCPSettings.Build()
if err != nil {
return nil, errors.New("Failed to build TCP config.").Base(err)
return nil, errors.New("Failed to build RAW config.").Base(err)
}
config.TransportSettings = append(config.TransportSettings, &internet.TransportConfig{
ProtocolName: "tcp",
Expand Down

0 comments on commit 1f2169a

Please sign in to comment.