[asterisk-bugs] [Asterisk 0018704]: "Require: timer" header still being sent

Asterisk Bug Tracker noreply at bugs.digium.com
Sun May 1 19:08:06 CDT 2011


A NOTE has been added to this issue. 
====================================================================== 
https://issues.asterisk.org/view.php?id=18704 
====================================================================== 
Reported By:                mfrager
Assigned To:                
====================================================================== 
Project:                    Asterisk
Issue ID:                   18704
Category:                   Channels/chan_sip/Interoperability
Reproducibility:            always
Severity:                   major
Priority:                   normal
Status:                     acknowledged
Asterisk Version:           1.8.2.3 
JIRA:                       SWP-3030 
Regression:                 No 
Reviewboard Link:            
SVN Branch (only for SVN checkouts, not tarball releases): N/A 
SVN Revision (number only!):  
Request Review:              
====================================================================== 
Date Submitted:             2011-01-28 18:45 CST
Last Modified:              2011-05-01 19:08 CDT
====================================================================== 
Summary:                    "Require: timer" header still being sent
Description: 
This field is causing calls to drop after exactly 20 minutes.

Here is the code in question:

channels/chan_sip.c: Line 9651

        /* Add Session-Timers related headers if the feature is active for
this session.
           An exception to this behavior is the ACK request. Since
Asterisk never requires
           session-timers support from a remote end-point (UAS) in an
INVITE, it must
           not send 'Require: timer' header in the ACK request.
           This should only be added in the INVITE transactions, not
MESSAGE or REFER or other
           in-dialog messages.
        */
        if (p->stimer && p->stimer->st_active == TRUE &&
p->stimer->st_active_peer_ua == TRUE
            && sipmethod == SIP_INVITE) {
                char se_hdr[256];
                snprintf(se_hdr, sizeof(se_hdr), "%d;refresher=%s",
p->stimer->st_interval,
                        strefresher2str(p->stimer->st_ref));
                add_header(req, "Require", "timer");     /* <- PROBLEM!!!
*/
                add_header(req, "Session-Expires", se_hdr);
                snprintf(se_hdr, sizeof(se_hdr), "%d", st_get_se(p,
FALSE));
                add_header(req, "Min-SE", se_hdr);
        }  


======================================================================
Relationships       ID      Summary
----------------------------------------------------------------------
related to          0017005 [patch] Asterisk sends session-timer wi...
====================================================================== 

---------------------------------------------------------------------- 
 (0134292) awesterm (reporter) - 2011-05-01 19:08
 https://issues.asterisk.org/view.php?id=18704#c134292 
---------------------------------------------------------------------- 
Still having this issue on Asterisk 1.8.3.3. UAs from D-Link also responds
with "420 Bad Extension" if the "Require: timer" header is added to the
Re-INVITE. 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2011-05-01 19:08 awesterm       Note Added: 0134292                          
======================================================================




More information about the asterisk-bugs mailing list