From dab65232ec2a2568fc8f84a21c6addd25373df18 Mon Sep 17 00:00:00 2001 From: Stefan Sayer Date: Fri, 10 Dec 2010 05:42:49 +0100 Subject: [PATCH] sst: b/f: timers headers only in 2xx reply --- core/plug-in/session_timer/SessionTimer.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/core/plug-in/session_timer/SessionTimer.cpp b/core/plug-in/session_timer/SessionTimer.cpp index fc9283f3..e89da7a0 100644 --- a/core/plug-in/session_timer/SessionTimer.cpp +++ b/core/plug-in/session_timer/SessionTimer.cpp @@ -110,10 +110,12 @@ bool SessionTimer::onSendReply(const AmSipRequest& req, string& hdrs, int flags) { - string m_hdrs = SIP_HDR_COLSP(SIP_HDR_SUPPORTED) "timer" CRLF; - if ((req.method != SIP_METH_INVITE) && (req.method != SIP_METH_UPDATE)) + if (((req.method != SIP_METH_INVITE) && (req.method != SIP_METH_UPDATE)) || + (code < 200) || (code >= 300)) return false; + string m_hdrs = SIP_HDR_COLSP(SIP_HDR_SUPPORTED) "timer" CRLF; + // only in 2xx responses to INV/UPD m_hdrs += SIP_HDR_COLSP(SIP_HDR_SESSION_EXPIRES) + int2str(session_interval) + ";refresher="+