[Home]

Summary:ASTERISK-25691: Crash occurs when screening mode (Dial's 'p' argument) is enabled and callee rejects a call or hangs up.
Reporter:Etienne Lessard (hexanol)Labels:
Date Opened:2016-01-12 14:20:46.000-0600Date Closed:2016-09-07 15:50:51
Priority:MajorRegression?Yes
Status:Closed/CompleteComponents:Applications/app_dial
Versions:13.6.0 13.7.0 Frequency of
Occurrence
Constant
Related
Issues:
is caused byASTERISK-23164 CDRs: mid-call/pre-dial handlers perturb context/exten/app/data fields during Dial
is duplicated byASTERISK-25723 crash on dial with option p or P (privacy mode)
is duplicated byASTERISK-26372 dial: Crash when removing dial masquerade datastore from peer
Environment:Debian 8 (jessie) amd64Attachments:( 0) alternative-backtrace.txt
( 1) backtrace.txt
( 2) extensions.conf
( 3) full.log
( 4) sip.conf
Description:Given I have a user Alice (SIP/alice)
And I have a user Bob (SIP/bob)
And I have the following dialplan:
{code}
[default]
exten = 1022,1,NoOp()
same  =   n,Dial(SIP/bob,,p)
same  =   n,Hangup()
{code}
When Alice calls Bob through the 1022@default extension
And Bob answers his phone, and reject the call by pressing 3
Then asterisk crash

I've attached a backtrace, the "full" log, the extensions.conf and sip.conf to this ticket.

There seems to be other way to trigger a crash, like if "Bob answers his phone then hangup".

Thank you
Comments:By: Asterisk Team (asteriskteam) 2016-01-12 14:20:48.530-0600

Thanks for creating a report! The issue has entered the triage process. That means the issue will wait in this status until a Bug Marshal has an opportunity to review the issue. Once the issue has been reviewed you will receive comments regarding the next steps towards resolution.

A good first step is for you to review the [Asterisk Issue Guidelines|https://wiki.asterisk.org/wiki/display/AST/Asterisk+Issue+Guidelines] if you haven't already. The guidelines detail what is expected from an Asterisk issue report.

Then, if you are submitting a patch, please review the [Patch Contribution Process|https://wiki.asterisk.org/wiki/display/AST/Patch+Contribution+Process].

By: Etienne Lessard (hexanol) 2016-01-12 14:29:29.857-0600

I've attached an alternative backtrace (alternative-backtrace.txt), that I generated after answering and hanging up the phone (instead of pressing 3); the main difference seems that asterisk terminated with a SIGABRT (raised by libc) instead of a SIGSEGV.

By: Rusty Newton (rnewton) 2016-01-13 16:11:47.983-0600

Thanks for the debug. I was able to reproduce this as you described. Both cases you mentioned resulted in a crash like yours.

By: Daniel Journo (journo) 2016-01-14 03:05:23.532-0600

Also crashes when using pjsip.

By: Tzafrir Cohen (tzafrir) 2016-01-25 09:27:09.201-0600

After bisecting, it seems that the crash starts from commit 66c46fba24ccfa782339e3ef2722ea53b5573d17 .

By: Andres Miedzowicz (amiedzow) 2016-08-22 06:52:24.308-0500

According to the details, this affects versions 13.6 and 13.7. Does anyone know if version 13.8 has this bug fixed?

By: Joshua C. Colp (jcolp) 2016-08-22 07:04:50.757-0500

As this issue is still open and has no target release version, it is still an issue in newer versions.

By: Andres Miedzowicz (amiedzow) 2016-09-07 18:18:20.319-0500

Hi Matt,

I noticed that this issue was marked as Fixed. What's the solution?


By: Joshua C. Colp (jcolp) 2016-09-07 18:21:07.781-0500

Patches fixing this are merging into the various branches, and will be in the next release.