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



branches/13/res/res_pjsip_outbound_publish.c
<https://reviewboard.asterisk.org/r/4384/#comment24866>

    What does a user see when this happens? Any indication?


- Joshua Colp


On Jan. 28, 2015, 11:44 p.m., Kevin Harwell wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviewboard.asterisk.org/r/4384/
> -----------------------------------------------------------
> 
> (Updated Jan. 28, 2015, 11:44 p.m.)
> 
> 
> Review request for Asterisk Developers.
> 
> 
> Bugs: ASTERISK-24635
>     https://issues.asterisk.org/jira/browse/ASTERISK-24635
> 
> 
> Repository: Asterisk
> 
> 
> Description
> -------
> 
> When Asterisk attempts to send SIP outbound publish information and no 
> response is ever received (no 200 okay, 412, 423) the system eventually 
> crashes. A response is never received because the system Asterisk is 
> attempting to send publish information to is not available. The underlying 
> pjsip framework attempts to send publish information. After several attempts 
> it calls back into the Asterisk outbound publish code. At this point if the 
> "client->queue" is empty Asterisk attempts to schedule a refresh which 
> utilizes "rdata" and since no response was received the given "rdata" 
> struture is NULL. Attempting to dereference a NULL object of course results 
> in a crash.
> 
> This patch re-queues the current message that has not received a response yet 
> (has no "rdata"), thus removing the possibility of the queue being empty and 
> having no "rdata" available. Consequently, in this scenario, the publish 
> refresh is not called and the crash is avoided.
> 
> 
> Diffs
> -----
> 
>   branches/13/res/res_pjsip_outbound_publish.c 431323 
> 
> Diff: https://reviewboard.asterisk.org/r/4384/diff/
> 
> 
> Testing
> -------
> 
> First duplicated the problem by attempting to publish to a non existent 
> system (after a bit Asterisk crashed). After applying the patch using the 
> same setup Asterisk no longer crashed. Also ran the current set of outbound 
> publish testsuite tests to make sure those still passed.
> 
> 
> Thanks,
> 
> Kevin Harwell
> 
>

-- 
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Reply via email to