Module: sems Branch: master Commit: dd920d04d552a8ac36f4d39ee9d6d76f86836b53 URL: http://git.sip-router.org/cgi-bin/gitweb.cgi/sems/?a=commit;h=dd920d04d552a8ac36f4d39ee9d6d76f86836b53
Author: Raphael Coeffic <[email protected]> Committer: Raphael Coeffic <[email protected]> Date: Thu Mar 21 10:38:22 2013 +0100 b2b: do not relay replies if the to-tag is different from the dialog's remote-tag. --- core/AmB2BSession.cpp | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-) diff --git a/core/AmB2BSession.cpp b/core/AmB2BSession.cpp index 21b7ecf..2279c9a 100644 --- a/core/AmB2BSession.cpp +++ b/core/AmB2BSession.cpp @@ -435,6 +435,12 @@ void AmB2BSession::onSipReply(const AmSipRequest& req, const AmSipReply& reply, reply.cseq_method.c_str(), reply.code,reply.reason.c_str(), fwd?"true":"false",reply.body.getCTStr().c_str()); + if(!dlg->getRemoteTag().empty() && dlg->getRemoteTag() != reply.to_tag) { + DBG("sess %p received %i reply with != to-tag: %s (remote-tag:%s)", + this, reply.code, reply.to_tag.c_str(),dlg->getRemoteTag().c_str()); + return; // drop packet + } + AmSdp sdp; if ((rtp_relay_mode == RTP_Relay) && _______________________________________________ Semsdev mailing list [email protected] http://lists.iptel.org/mailman/listinfo/semsdev
