[asterisk-dev] [Code Review] 4248: res_pjsip_session: Queue BYE if an outstanding INVITE transaction exists

Joshua Colp reviewboard at asterisk.org
Fri Dec 12 07:05:19 CST 2014


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/4248/
-----------------------------------------------------------

(Updated Dec. 12, 2014, 7:05 a.m.)


Status
------

This change has been marked as submitted.


Review request for Asterisk Developers.


Changes
-------

Committed in revision 429409


Repository: Asterisk


Description
-------

The chan_pjsip module currently sends a BYE when a channel is hung up without any regard to an active INVITE transaction. While the PJSIP stack will allow this to happen the remote client may end up receiving a re-INVITE and a BYE at nearly the same time. Some implementations tolerate this while others do not. This would occur if two channels were in a bridge using bridge_native_rtp with direct media and one hung up.

This change makes it so if there is an outstanding INVITE transaction the BYE is queued so it will occur when the transaction has completed (be it normally or timeout).


Diffs
-----

  /branches/12/res/res_pjsip_session.exports.in 429349 
  /branches/12/res/res_pjsip_session.c 429349 
  /branches/12/include/asterisk/res_pjsip_session.h 429349 
  /branches/12/channels/chan_pjsip.c 429349 

Diff: https://reviewboard.asterisk.org/r/4248/diff/


Testing
-------

Manually tested and confirmed the behavior executes.

Ran directmedia transfer tests and confirmed they were written to take this behavior into account. After fixing the behavior they were broken and are fixed in another review.


Thanks,

Joshua Colp

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20141212/588fb9d8/attachment-0001.html>


More information about the asterisk-dev mailing list