]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
Session timer were not activated if Supported header field in INVITE had both "timer...
authorDavid Vossel <dvossel@digium.com>
Wed, 15 Jul 2009 22:04:13 +0000 (22:04 +0000)
committerDavid Vossel <dvossel@digium.com>
Wed, 15 Jul 2009 22:04:13 +0000 (22:04 +0000)
(closes issue #15403)
Reported by: makoto
Patches:
      sip-session-timer.patch uploaded by makoto (license 38)

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@206768 65c4cc65-6c06-0410-ace0-fbb531ad65f3

channels/chan_sip.c

index 28ccb1c3da1b72d1f4dea737337ed1f17bb4cc31..34e13a0f5815181c51f0f8526958d6e3248fdfc3 100644 (file)
@@ -20469,7 +20469,7 @@ static int handle_request_invite(struct sip_pvt *p, struct sip_request *req, int
        }
 
        /* Session-Timers */
-       if (p->sipoptions == SIP_OPT_TIMER) {
+       if (p->sipoptions & SIP_OPT_TIMER) {
                /* The UAC has requested session-timers for this session. Negotiate
                the session refresh interval and who will be the refresher */
                ast_debug(2, "Incoming INVITE with 'timer' option enabled\n");
@@ -20538,7 +20538,7 @@ static int handle_request_invite(struct sip_pvt *p, struct sip_request *req, int
                        break;
 
                case SESSION_TIMER_MODE_REFUSE:
-                       if (p->reqsipoptions == SIP_OPT_TIMER) {
+                       if (p->reqsipoptions & SIP_OPT_TIMER) {
                                transmit_response_with_unsupported(p, "420 Option Disabled", req, required);
                                ast_log(LOG_WARNING, "Received SIP INVITE with supported but disabled option: %s\n", required);
                                p->invitestate = INV_COMPLETED;