fix(bond): ограничить pending-map в copyBondToTCP против OOM

Чанки не по порядку с постоянной потерей вызывали неограниченный рост.
Лимит 1024 записи, закрытие соединения при переполнении.
This commit is contained in:
samosvalishe
2026-05-18 22:51:24 +03:00
parent 729557d00d
commit d0dabeec67
+4
View File
@@ -1876,6 +1876,10 @@ func copyBondToTCP(ctx context.Context, connID uint64, tcpConn net.Conn, recvCh
}
switch f.typ {
case bondFrameData:
if len(pending) >= 1024 {
log.Printf("[bond %d] pending map overflow (>1024), closing", connID)
return
}
pending[f.seq] = f.data
case bondFrameFIN:
v := f.seq