Module: sems Branch: master Commit: 7ace3e38de838c518f51520771eabcf25440eb67 URL: http://git.sip-router.org/cgi-bin/gitweb.cgi/sems/?a=commit;h=7ace3e38de838c518f51520771eabcf25440eb67
Author: Stefan Sayer <[email protected]> Committer: Stefan Sayer <[email protected]> Date: Fri Sep 20 11:40:12 2013 +0200 sbc: b/f: on auth, don't relay processed 401/407 reply to other leg --- apps/sbc/SBCCallLeg.cpp | 9 ++++++++- 1 files changed, 8 insertions(+), 1 deletions(-) diff --git a/apps/sbc/SBCCallLeg.cpp b/apps/sbc/SBCCallLeg.cpp index 36efe40..18772a7 100644 --- a/apps/sbc/SBCCallLeg.cpp +++ b/apps/sbc/SBCCallLeg.cpp @@ -548,12 +548,19 @@ void SBCCallLeg::onSipReply(const AmSipRequest& req, const AmSipReply& reply, DBG("uac_auth consumed reply with cseq %d and resent with cseq %d; " "updating relayed_req map\n", reply.cseq, cseq_before); updateUACTransCSeq(reply.cseq, cseq_before); + + // don't relay to other leg, process in AmSession + AmSession::onSipReply(req, reply, old_dlg_status); + // skip presenting reply to ext_cc modules, too + return; } } } for (vector<ExtendedCCInterface*>::iterator i = cc_ext.begin(); i != cc_ext.end(); ++i) { - if ((*i)->onInDialogReply(this, reply) == StopProcessing) return; + if ((*i)->onInDialogReply(this, reply) == StopProcessing) { + return; + } } CallLeg::onSipReply(req, reply, old_dlg_status); _______________________________________________ Semsdev mailing list [email protected] http://lists.iptel.org/mailman/listinfo/semsdev
