mirror of
https://github.com/openlibrecommunity/olcrtc.git
synced 2026-07-03 14:05:39 +02:00
c19906e85e
xmppKeepalive was using fire-and-forget Send(); on a half-open TCP connection pings were sent but the missing reply went undetected, leaving the session stuck. Switch to SendIQWait so a timeout triggers a reconnect. In peer-routing mode the server may send the initial welcome frame as a broadcast (receiverEpoch=0) before it has learned the client's localEpoch. The previous requireTargetedPeer guard dropped every broadcast unconditionally. Tighten the guard: only drop frames whose senderEpoch is unknown or belongs to a different peer; frames from the already-latched peer are always accepted.