mirror of
https://github.com/cmz0228/hysteria-dev.git
synced 2025-06-15 16:59:52 +00:00
Merge pull request #307 from HyNetwork/fix-tun-timeout-check
fix tun timeout check
This commit is contained in:
commit
5d98f7f5c3
@ -275,7 +275,7 @@ func client(config *clientConfig) {
|
||||
"src": addr.String(),
|
||||
"dst": reqAddr,
|
||||
}).Debugf("TUN %s closed for timeout", strings.ToUpper(addr.Network()))
|
||||
} else if err.Error() == "deadline exceeded" && strings.HasPrefix(addr.Network(), "tcp") {
|
||||
} else if nErr, ok := err.(net.Error); ok && nErr.Timeout() && strings.HasPrefix(addr.Network(), "tcp") {
|
||||
logrus.WithFields(logrus.Fields{
|
||||
"src": addr.String(),
|
||||
"dst": reqAddr,
|
||||
|
@ -35,9 +35,11 @@ func (s *Server) relayTCP(clientConn, relayConn net.Conn) {
|
||||
}
|
||||
relayConn.Close()
|
||||
clientConn.Close()
|
||||
if closeErr != nil && closeErr.Error() == "deadline exceeded" {
|
||||
if closeErr != nil {
|
||||
if err, ok := closeErr.(net.Error); ok && err.Timeout() {
|
||||
if clientConn, ok := clientConn.(tun2socks.TCPConn); ok {
|
||||
clientConn.Abort()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user