fix(quic): TCP 解析失败不再静默丢包
open_quic_client 分支下,非分片 TCP 包若 TcpPacket 解析失败, 原实现 return true 表示"已处理",实际什么都没做——包被静默丢弃, 与文件中非 quic_client 路径(解析失败落到 return false)语义不一致。 改为 return false,把包交还给调用方的其他转发路径。 注:outbound() 依赖真实 IpStack,无法低成本构造单测;clippy 通过。
This commit is contained in:
@@ -35,7 +35,9 @@ impl EnhancedQuicOutbound {
|
||||
let segmented = more_fragments || offset > 0;
|
||||
if !segmented {
|
||||
let Some(tcp) = TcpPacket::new(ipv4.payload()) else {
|
||||
return true;
|
||||
// TCP 解析失败无法判断连接归属,返回 false 让其他
|
||||
// 转发路径处理,不能返回 true 静默吞掉这个包
|
||||
return false;
|
||||
};
|
||||
// 不是第一个包
|
||||
if !(tcp.get_flags() & SYN == SYN && tcp.get_flags() & ACK != ACK) {
|
||||
|
||||
Reference in New Issue
Block a user