From b5ce83dbe74aaf5695995529645dbf0e667f3ab0 Mon Sep 17 00:00:00 2001 From: Donat Zenichev Date: Wed, 9 Jul 2025 17:07:28 +0200 Subject: [PATCH] MT#62859 CallLeg: set sip replay to false (reconnect) When this leg being reconnected, is still in progress of posting remaining events to update the other side (the reconnect originator), don't consider it as sip relay ready. Otherwise any INVITE updates coming to it, will lead to stumbled INVITEs coming to the other leg, but without a possibility to use it here (because e.g. this other side never seen 200OK answer even). Change-Id: I183d0f70433c156030de38238db395e2c1372352 --- apps/sbc/CallLeg.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/apps/sbc/CallLeg.cpp b/apps/sbc/CallLeg.cpp index 16961ea3..d788a3d5 100644 --- a/apps/sbc/CallLeg.cpp +++ b/apps/sbc/CallLeg.cpp @@ -832,6 +832,10 @@ void CallLeg::onB2BReconnect(ReconnectLegEvent* ev) ILOG_DLG(L_DBG, "INVITE pending - planning session update with SDP from INVITE+replaces for later for ltag %s", getLocalTag().c_str()); + + /* we aren't ready to relay to the other leg yet (to the originator of reconnection) */ + set_sip_relay_only(false); + pending_updates.push_back(u); ILOG_DLG(L_DBG, "INVITE pending - accepting with fake SDP\n"); // remember SDP origin of the other side for our requests