Explorar o código

agreesively close unresponding connections

v2ray %!s(int64=9) %!d(string=hai) anos
pai
achega
c5170a36f0
Modificáronse 1 ficheiros con 4 adicións e 0 borrados
  1. 4 0
      transport/internet/kcp/kcp.go

+ 4 - 0
transport/internet/kcp/kcp.go

@@ -377,6 +377,10 @@ func (kcp *KCP) flush() {
 	if kcp.state == StateTerminated {
 		return
 	}
+	if kcp.state == StateActive && _itimediff(kcp.current, kcp.lastIncomingTime) >= 30000 {
+		kcp.OnClose()
+	}
+
 	if kcp.state == StateTerminating {
 		kcp.output.Write(&CmdOnlySegment{
 			Conv: kcp.conv,