fix: Vision disable filter for non-TLS connections

This commit is contained in:
gVisor bot 2023-02-25 15:00:21 +08:00
parent aaf1ce67d1
commit 0bdd896c45

View file

@ -340,15 +340,20 @@ func (vc *Conn) sendRequest(p []byte) bool {
if isVision && !vc.dst.UDP && !vc.dst.Mux { if isVision && !vc.dst.UDP && !vc.dst.Mux {
if len(p) == 0 { if len(p) == 0 {
vc.packetsToFilter = 0
vc.writeFilterApplicationData = false
WriteWithPadding(buffer, nil, commandPaddingEnd, vc.id) WriteWithPadding(buffer, nil, commandPaddingEnd, vc.id)
// disable XTLS
vc.readProcess = false
vc.writeFilterApplicationData = false
vc.packetsToFilter = 0
} else { } else {
vc.FilterTLS(p) vc.FilterTLS(p)
if vc.isTLS { if vc.isTLS {
WriteWithPadding(buffer, p, commandPaddingContinue, vc.id) WriteWithPadding(buffer, p, commandPaddingContinue, vc.id)
} else { } else {
buf.Must(buf.Error(buffer.Write(p))) buf.Must(buf.Error(buffer.Write(p)))
// disable XTLS
vc.readProcess = false vc.readProcess = false
vc.writeFilterApplicationData = false vc.writeFilterApplicationData = false
vc.packetsToFilter = 0 vc.packetsToFilter = 0