mirror of
https://github.com/SagerNet/sing-box.git
synced 2025-09-08 18:28:50 +08:00
Compare commits
2 Commits
dev-next
...
v1.4.0-rc.
Author | SHA1 | Date | |
---|---|---|---|
![]() |
ad33efabd6 | ||
![]() |
6371a1338d |
@ -22,19 +22,24 @@ func PeekStream(ctx context.Context, conn net.Conn, buffer *buf.Buffer, timeout
|
|||||||
if timeout == 0 {
|
if timeout == 0 {
|
||||||
timeout = C.ReadPayloadTimeout
|
timeout = C.ReadPayloadTimeout
|
||||||
}
|
}
|
||||||
err := conn.SetReadDeadline(time.Now().Add(timeout))
|
deadline := time.Now().Add(timeout)
|
||||||
if err != nil {
|
for i := 0; ; i++ {
|
||||||
return nil, E.Cause(err, "set read deadline")
|
err := conn.SetReadDeadline(deadline)
|
||||||
|
if err != nil {
|
||||||
|
return nil, E.Cause(err, "set read deadline")
|
||||||
|
}
|
||||||
|
_, err = buffer.ReadOnceFrom(conn)
|
||||||
|
err = E.Errors(err, conn.SetReadDeadline(time.Time{}))
|
||||||
|
if err != nil {
|
||||||
|
if i > 0 {
|
||||||
|
break
|
||||||
|
}
|
||||||
|
return nil, E.Cause(err, "read payload")
|
||||||
|
}
|
||||||
}
|
}
|
||||||
_, err = buffer.ReadOnceFrom(conn)
|
|
||||||
err = E.Errors(err, conn.SetReadDeadline(time.Time{}))
|
|
||||||
if err != nil {
|
|
||||||
return nil, E.Cause(err, "read payload")
|
|
||||||
}
|
|
||||||
var metadata *adapter.InboundContext
|
|
||||||
var errors []error
|
var errors []error
|
||||||
for _, sniffer := range sniffers {
|
for _, sniffer := range sniffers {
|
||||||
metadata, err = sniffer(ctx, bytes.NewReader(buffer.Bytes()))
|
metadata, err := sniffer(ctx, bytes.NewReader(buffer.Bytes()))
|
||||||
if metadata != nil {
|
if metadata != nil {
|
||||||
return metadata, nil
|
return metadata, nil
|
||||||
}
|
}
|
||||||
|
@ -1,3 +1,7 @@
|
|||||||
|
#### 1.4.0-rc.2
|
||||||
|
|
||||||
|
* Fixes and improvements
|
||||||
|
|
||||||
#### 1.4.0-rc.1
|
#### 1.4.0-rc.1
|
||||||
|
|
||||||
* Fix TUIC UDP
|
* Fix TUIC UDP
|
||||||
|
Loading…
x
Reference in New Issue
Block a user