[asterisk-bugs] [Asterisk 0014385]: Unhold fails if first SDP on OK, particularly Cisco CCM 6

Asterisk Bug Tracker noreply at bugs.digium.com
Mon Feb 16 12:45:09 CST 2009


A NOTE has been added to this issue. 
====================================================================== 
http://bugs.digium.com/view.php?id=14385 
====================================================================== 
Reported By:                davidw
Assigned To:                
====================================================================== 
Project:                    Asterisk
Issue ID:                   14385
Category:                   Channels/chan_sip/Interoperability
Reproducibility:            always
Severity:                   major
Priority:                   normal
Status:                     new
Asterisk Version:           1.6.0.1 
Regression:                 No 
SVN Branch (only for SVN checkouts, not tarball releases): N/A 
SVN Revision (number only!):  
Request Review:              
====================================================================== 
Date Submitted:             2009-02-02 06:39 CST
Last Modified:              2009-02-16 12:45 CST
====================================================================== 
Summary:                    Unhold fails if first SDP on OK, particularly Cisco
CCM 6
Description: 
Cisco CCM 6 appears never to send SDP on the INVITE, so Asterisk
effectively makes the offer, even when the Cisco is re-inviting because a
CCM hosted phone has gone on hold.  Asterisk sets up its SDP from flags[1]
in the channel private data structure, which means that, if the channel was
on hold, it will offer a=inactive (observed, although a=recvonly also seems
possible).  Even if the CCM intended to unhold, the only possible response
to an a=inactive offer, is a=inactive.  Asterisk should only actually use
saved state if it is making the response.  For an offer, as it looks like
it can never locally hold, it should offer a=sendrecv.
======================================================================
Relationships       ID      Summary
----------------------------------------------------------------------
related to          0014448 [patch] chan_sip fails to remove hold w...
====================================================================== 

---------------------------------------------------------------------- 
 (0100190) davidw (reporter) - 2009-02-16 12:45
 http://bugs.digium.com/view.php?id=14385#c100190 
---------------------------------------------------------------------- 
Looking at the code, I am reasonably sure that the combination of revision
65041 and 174644 would cure our symptom, but at the expense of redundant
unhold events and unhold SIP history lines.

If there were a re-invite when already held, and which resulted in a held
state, it would unhold between the INVITE and the ACK, which is probably
not a good thing.  (This could be said to be due to the fact that the code
doesn't properly distinguish between an SDP request and response.)

As far I can see, these need to be applied on the 1.6.0 and trunk branches
in order to avoid a regression failure with respect to the case for which
they were originally designed.

Now I am back in the office, I probably need to double check to see if I
really got held assumed in the SDP on the OK, even when the channel wasn't
held, as that may mean there is another problem somewhere. 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2009-02-16 12:45 davidw         Note Added: 0100190                          
======================================================================




More information about the asterisk-bugs mailing list