mirror of
https://github.com/v2fly/v2ray-core.git
synced 2024-11-16 09:26:21 -05:00
fix snifer
This commit is contained in:
parent
00dd7d5cd2
commit
94405dd467
@ -110,7 +110,7 @@ func snifer(ctx context.Context, sniferList []proxyman.KnownProtocols, outbound
|
||||
if mb.IsEmpty() {
|
||||
continue
|
||||
}
|
||||
nBytes, _ := mb.Read(payload)
|
||||
nBytes := mb.Copy(payload)
|
||||
for _, protocol := range sniferList {
|
||||
var f func([]byte) (string, error)
|
||||
switch protocol {
|
||||
|
@ -31,6 +31,18 @@ func (mb *MultiBuffer) AppendMulti(buf MultiBuffer) {
|
||||
*mb = append(*mb, buf...)
|
||||
}
|
||||
|
||||
func (mb MultiBuffer) Copy(b []byte) int {
|
||||
total := 0
|
||||
for _, bb := range mb {
|
||||
nBytes := copy(b[total:], bb.Bytes())
|
||||
total += nBytes
|
||||
if nBytes < bb.Len() {
|
||||
break
|
||||
}
|
||||
}
|
||||
return total
|
||||
}
|
||||
|
||||
func (mb *MultiBuffer) Read(b []byte) (int, error) {
|
||||
endIndex := len(*mb)
|
||||
totalBytes := 0
|
||||
|
Loading…
Reference in New Issue
Block a user