[asterisk-bugs] [JIRA] (ASTERISK-24516) [patch]Asterisk segfaults when playing back voicemail under high concurrency with an IMAP backend

Asterisk Team (JIRA) noreply at issues.asterisk.org
Wed Jul 27 10:28:16 CDT 2016


     [ https://issues.asterisk.org/jira/browse/ASTERISK-24516?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Asterisk Team updated ASTERISK-24516:
-------------------------------------

    Target Release Version/s: 14.0.0

> [patch]Asterisk segfaults when playing back voicemail under high concurrency with an IMAP backend
> -------------------------------------------------------------------------------------------------
>
>                 Key: ASTERISK-24516
>                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-24516
>             Project: Asterisk
>          Issue Type: Bug
>      Security Level: None
>          Components: Applications/app_voicemail/IMAP
>    Affects Versions: 11.8.1
>         Environment: Linux 3.2.0-4-amd64 #1 SMP Debian 3.2.60-1+deb7u3 x86_64 GNU/Linux
> Debian version 7.6
>            Reporter: David Duncan Ross Palmer
>      Target Release: 11.15.0, 12.8.0, 13.1.0, 14.0.0
>
>         Attachments: ASTERISK-24516.diff, backtrace.txt
>
>
> We have managed to reliably reproduce a crash when playing back voicemail from a specific mailbox, when using the IMAP_STORAGE backend, via libc-client2007e.
> The actual IMAP implementation is an in house product, and likely beyond the scope of the problem
> 	▪	STEPS TO REPRODUCE ******
> 1. Build Asterisk to use IMAP_STORAGE
2. Create a voicemailbox in voicemail.conf.
3. Create a peer within sip.conf to allow sipp to have unauthenticated access to dial the mailbox
4. Set up a dialplan so that you can call “VoicemailMain <extension>,sa(1)” that is, to play an old message automagically.
5. Run the following SIPp command:
> {code}
> sipp -sn uac -d 7000 -s ‘*1’ 127.0.0.1 -l 400 -mp 5606
> {code}
> ie. dial to listen to your voicemail, using the aforementioned dialplan with 400 concurrent calls, each 7 secs max duration.  It will be a mere matter of a minute or so until the condition is triggered, in our experience.
> 	▪	ADDITIONAL INFORMATION ******
> The following files are attached:
> # 
ASTERISK-24516.dff
> The idea of ASTERISK-24516.diff being that some operations that mail_open does may not be thread safe, so just implement a global mutex around it in Asterisk.



--
This message was sent by Atlassian JIRA
(v6.2#6252)



More information about the asterisk-bugs mailing list