1
0
mirror of https://github.com/v2fly/v2ray-core.git synced 2025-01-21 16:56:27 -05:00

set TCP keep alive only on TCP socket

This commit is contained in:
Shelikhoo 2021-05-04 22:30:41 +01:00
parent 1dfe55fac8
commit c564c84b17
No known key found for this signature in database
GPG Key ID: C4D5E79D22B25316

View File

@ -47,12 +47,6 @@ func applyOutboundSocketOptions(network string, address string, fd uintptr, conf
}
}
if config.KeepAliveDuration != 0 {
if err := syscall.SetsockoptInt(int(fd), syscall.IPPROTO_TCP, syscall.TCP_KEEPINTVL, int(config.KeepAliveDuration)); err != nil {
return newError("failed to set TCP_KEEPINTVL", err)
}
}
if isTCPSocket(network) {
switch config.Tfo {
case SocketConfig_Enable:
@ -64,6 +58,12 @@ func applyOutboundSocketOptions(network string, address string, fd uintptr, conf
return newError("failed to set TCP_FASTOPEN_CONNECT=0").Base(err)
}
}
if config.KeepAliveDuration != 0 {
if err := syscall.SetsockoptInt(int(fd), syscall.IPPROTO_TCP, syscall.TCP_KEEPINTVL, int(config.KeepAliveDuration)); err != nil {
return newError("failed to set TCP_KEEPINTVL", err)
}
}
}
if config.Tproxy.IsEnabled() {