Skip to content

Commit da49141

Browse files
committed
Allow final ack in some cases
1 parent ee470c0 commit da49141

File tree

1 file changed

+5
-0
lines changed
  • client/firewall/uspfilter/conntrack

1 file changed

+5
-0
lines changed

client/firewall/uspfilter/conntrack/tcp.go

+5
Original file line numberDiff line numberDiff line change
@@ -277,6 +277,11 @@ func (t *TCPTracker) isValidStateForFlags(state TCPState, flags uint8) bool {
277277
return flags&TCPFin != 0 || flags&TCPAck != 0
278278
case TCPStateLastAck:
279279
return flags&TCPAck != 0
280+
case TCPStateClosed:
281+
// Accept retransmitted ACKs in closed state
282+
// This is important because the final ACK might be lost
283+
// and the peer will retransmit their FIN-ACK
284+
return flags&TCPAck != 0
280285
}
281286
return false
282287
}

0 commit comments

Comments
 (0)