mirror of
https://github.com/v2fly/v2ray-core.git
synced 2025-01-20 16:26:23 -05:00
fix transfer for mux
This commit is contained in:
parent
30a0aa6fb0
commit
42d83a703e
@ -18,11 +18,14 @@ const (
|
||||
)
|
||||
|
||||
func (c RequestCommand) TransferType() TransferType {
|
||||
if c == RequestCommandTCP {
|
||||
switch c {
|
||||
case RequestCommandTCP, RequestCommandMux:
|
||||
return TransferTypeStream
|
||||
case RequestCommandUDP:
|
||||
return TransferTypePacket
|
||||
default:
|
||||
return TransferTypeStream
|
||||
}
|
||||
|
||||
return TransferTypePacket
|
||||
}
|
||||
|
||||
const (
|
||||
|
@ -131,7 +131,7 @@ func (c *ClientSession) EncodeRequestBody(request *protocol.RequestHeader, write
|
||||
}
|
||||
if request.Security.Is(protocol.SecurityType_NONE) {
|
||||
if request.Option.Has(protocol.RequestOptionChunkStream) {
|
||||
if request.Command == protocol.RequestCommandTCP {
|
||||
if request.Command.TransferType() == protocol.TransferTypeStream {
|
||||
return crypto.NewChunkStreamWriter(sizeParser, writer)
|
||||
}
|
||||
auth := &crypto.AEADAuthenticator{
|
||||
@ -236,7 +236,7 @@ func (c *ClientSession) DecodeResponseBody(request *protocol.RequestHeader, read
|
||||
}
|
||||
if request.Security.Is(protocol.SecurityType_NONE) {
|
||||
if request.Option.Has(protocol.RequestOptionChunkStream) {
|
||||
if request.Command == protocol.RequestCommandTCP {
|
||||
if request.Command.TransferType() == protocol.TransferTypeStream {
|
||||
return crypto.NewChunkStreamReader(sizeParser, reader)
|
||||
}
|
||||
|
||||
|
@ -252,7 +252,7 @@ func (s *ServerSession) DecodeRequestBody(request *protocol.RequestHeader, reade
|
||||
}
|
||||
if request.Security.Is(protocol.SecurityType_NONE) {
|
||||
if request.Option.Has(protocol.RequestOptionChunkStream) {
|
||||
if request.Command == protocol.RequestCommandTCP {
|
||||
if request.Command.TransferType() == protocol.TransferTypeStream {
|
||||
return crypto.NewChunkStreamReader(sizeParser, reader)
|
||||
}
|
||||
|
||||
@ -338,7 +338,7 @@ func (s *ServerSession) EncodeResponseBody(request *protocol.RequestHeader, writ
|
||||
}
|
||||
if request.Security.Is(protocol.SecurityType_NONE) {
|
||||
if request.Option.Has(protocol.RequestOptionChunkStream) {
|
||||
if request.Command == protocol.RequestCommandTCP {
|
||||
if request.Command.TransferType() == protocol.TransferTypeStream {
|
||||
return crypto.NewChunkStreamWriter(sizeParser, writer)
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user