[Home]

Summary:ASTERISK-25087: Asterisk segfault when using Directory application with alias option and specific mailbox configuration
Reporter:Chet Stevens (cwstevens)Labels:
Date Opened:2015-05-14 14:33:29Date Closed:2015-06-12 16:03:31
Priority:MajorRegression?
Status:Closed/CompleteComponents:Applications/app_directory
Versions:13.1.0 13.3.2 Frequency of
Occurrence
Constant
Related
Issues:
Environment:Asterisk 13.1-cert2 Ubuntu Server 14.04.1 LTS (GNU/Linux 3.13.0-35-generic x86_64) HP ProLiant DL380p Gen8 with 16 GB memory Wildcard AEX2400: wctdm24xxp+ Attachments:( 0) backtrace.txt
( 1) debug.txt
Description:[Edit by Rusty - adding Chet's new description on how to reproduce]

Hello. I think I found the exact way to reproduce this. I tested with Asterisk GIT-13-87c03b7. In summary, when using the "a" option it doesn't like any mailboxes defined with a name and nothing else.

I stripped down the test to barebones dialplan:

Dialplan
{noformat}
exten => ##94,1,Directory(,internal,fa)
{noformat}

Working voicemail.conf
{noformat}
[general]

[zonemessages]

[default]
4405 => 2580,Fred Jones,,,alias=leader
4406 => 2580,Velma Dinkley,,,alias=genius
{noformat}

If any mailbox is defined like:
{noformat}
<mailbox> => <password>,<name>
{noformat}
with nothing else then it will segfault.

If the mailboxes with a name at least end with a comma then aliases will work. For example:
{noformat}
<mailbox> => <password>,<name>,,,alias=My Alias ; With an alias defined.
<mailbox> => <password>,<name>, ; A comma added.
<mailbox> => <password>,<name>,,,alias= ; Alias parameter but no alias defined.
{noformat}
then the Directory application works as expected.

Backtrace will be attached. Last 10k lines of debug will be attached.

For reference the segfault was at:
{noformat}
May 14 11:43:19 Cherry-Red kernel: [1833492.105879] show_signal_msg: 24 callbacks suppressed
May 14 11:43:19 Cherry-Red kernel: [1833492.105885] asterisk[14204]: segfault at 0 ip 00007f815b4fb331 sp 00007f80f282d160 error 4 in libc-2.19.so[7f815b468000+1bb000]
{noformat}
Comments:By: Rusty Newton (rnewton) 2015-05-27 12:41:20.550-0500

[~cwstevens] the issue looks simple enough to reproduce by your description. However, I am unable to reproduce the issue using the dialplan provided.

I pulled down the latest source via Git in the 13 branch. Using: Asterisk GIT-13-87c03b7

I had to change the language out, but otherwise I used your exact dialplan, which works fine for me. I dialed into the directory many times with no issue.

Can you try that same dialplan but on a fresh install with very minimal configuration?

Once you have that down and have a minimal extensions.conf, voicemail.conf and pjsip.conf that reproduces the issue, please attach all of these to the issue (as .txt) along with a new debug log demonstrating the usage.

Thanks!

By: Chet Stevens (cwstevens) 2015-05-27 16:50:23.009-0500

Thank you. I will get this done as soon as possible.

By: Rusty Newton (rnewton) 2015-05-27 18:09:51.840-0500

Thanks! I also wanted to note here that other than the latest 13 Git pull (as of this morning) I also tested with Asterisk 13.1-cert2 from tarball.

By: Chet Stevens (cwstevens) 2015-05-28 12:05:42.601-0500

Hello. I think I found the exact way to reproduce this. I tested with Asterisk GIT-13-87c03b7. In summary, when using the "a" option it doesn't like any mailboxes defined with a name and nothing else.

I stripped down the test to barebones dialplan:

Dialplan
{noformat}
exten => ##94,1,Directory(,internal,fa)
{noformat}

Working voicemail.conf
{noformat}
[general]

[zonemessages]

[default]
4405 => 2580,Fred Jones,,,alias=leader
4406 => 2580,Velma Dinkley,,,alias=genius
{noformat}

If any mailbox is defined like:
{noformat}
<mailbox> => <password>,<name>
{noformat}
with nothing else then it will segfault.

If the mailboxes with a name at least end with a comma then aliases will work. For example:
{noformat}
<mailbox> => <password>,<name>,,,alias=My Alias ; With an alias defined.
<mailbox> => <password>,<name>, ; A comma added.
<mailbox> => <password>,<name>,,,alias= ; Alias parameter but no alias defined.
{noformat}
then the Directory application works as expected.

By: Rusty Newton (rnewton) 2015-06-04 09:26:16.804-0500

Great work - I was able to reproduce it using your new instructions. Opening this up and putting it in the queue.