[asterisk-bugs] [JIRA] (ASTERISK-29014) res_pjsip_session: Re-INVITE collisions aren't handled correctly
George Joseph (JIRA)
noreply at issues.asterisk.org
Thu Jul 30 08:09:43 CDT 2020
George Joseph created ASTERISK-29014:
----------------------------------------
Summary: res_pjsip_session: Re-INVITE collisions aren't handled correctly
Key: ASTERISK-29014
URL: https://issues.asterisk.org/jira/browse/ASTERISK-29014
Project: Asterisk
Issue Type: Bug
Security Level: None
Components: Resources/res_pjsip_session
Affects Versions: 17.6.0, 16.12.0, 13.35.0, GIT
Reporter: George Joseph
When both Asterisk and a UA send re-invites at the same time, both send 491 "Transaction in progress" responses to each other and back off a specified amount of time before retrying. When Asterisk prepared to send its re-invite, it set up the session's pending media state with the new topology it wanted, then sent the re-invite. When it received the re-invite from the UA, it partially processed the media in the re-invite and reset the pending media state _before_ sending the 491 losing the state it set in _its_ re-invite. When the backoff timer expires and Asterisk it re-sends the re-invite it originally sent, the pending media state is empty and the re-invite's sdp shows the streams as dropped.
Asterisk needs to do 2 things...
* Respond with a 491 _before_ making any changes to the session and media state.
* Save the media state when it queues the retry.
--
This message was sent by Atlassian JIRA
(v6.2#6252)
More information about the asterisk-bugs
mailing list