[asterisk-bugs] [LibPRI 0013872]: hangup with cause 41 leads to segmentation fault

Asterisk Bug Tracker noreply at bugs.digium.com
Fri Nov 14 06:30:42 CST 2008


A NOTE has been added to this issue. 
====================================================================== 
http://bugs.digium.com/view.php?id=13872 
====================================================================== 
Reported By:                eilonfulman
Assigned To:                
====================================================================== 
Project:                    LibPRI
Issue ID:                   13872
Category:                   Channels/chan_zap
Reproducibility:            always
Severity:                   crash
Priority:                   normal
Status:                     new
Asterisk Version:           1.4.21.2 
SVN Branch (only for SVN checkouts, not tarball releases): N/A 
SVN Revision (number only!):  
Disclaimer on File?:        N/A 
Request Review:              
====================================================================== 
Date Submitted:             2008-11-11 05:47 CST
Last Modified:              2008-11-14 06:30 CST
====================================================================== 
Summary:                    hangup with cause 41 leads to segmentation fault
Description: 
A call that comes from legacy pbx receives a hangup with cause 41.
But the system still handles the call.
When the system tries to change status channel on the channel of the call,
we receive segmentation fault.


====================================================================== 

---------------------------------------------------------------------- 
 (0094890) niewerthj (reporter) - 2008-11-14 06:30
 http://bugs.digium.com/view.php?id=13872#c94890 
---------------------------------------------------------------------- 
This seems to be part of a more general problem in the chan_zap / libpri
integration. There are several other errors caused by situations when
chan_zap is passing (q931_call)-pointers to libpri which have already been
freed by libpri. I since built in some pointer-accounting code into libpri
which let all functions return immediately when an already freed
(q931_call)-pointer was passed, to prevent those segfault. But that
converts the problem of segfaults to a problem of insane looping
pbx_threads. Unfortunately my understanding of chan_zap.c is not deep
enough to identify when this is going to happen. 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2008-11-14 06:30 niewerthj      Note Added: 0094890                          
======================================================================




More information about the asterisk-bugs mailing list