[asterisk-bugs] [Asterisk 0014932]: [patch] asterisk-1.6.0.9-x86_64 segfaults when leaving a voicemail internally to another extension

Asterisk Bug Tracker noreply at bugs.digium.com
Mon Jun 8 14:39:32 CDT 2009


A NOTE has been added to this issue. 
====================================================================== 
https://issues.asterisk.org/view.php?id=14932 
====================================================================== 
Reported By:                jpiszcz
Assigned To:                seanbright
====================================================================== 
Project:                    Asterisk
Issue ID:                   14932
Category:                   Applications/app_voicemail
Reproducibility:            always
Severity:                   block
Priority:                   normal
Status:                     closed
Target Version:             1.4.26
Asterisk Version:           1.6.0.7 
Regression:                 No 
SVN Branch (only for SVN checkouts, not tarball releases): N/A 
SVN Revision (number only!):  
Request Review:              
Resolution:                 fixed
Fixed in Version:           
====================================================================== 
Date Submitted:             2009-04-19 07:59 CDT
Last Modified:              2009-06-08 14:39 CDT
====================================================================== 
Summary:                    [patch] asterisk-1.6.0.9-x86_64 segfaults when
leaving a voicemail internally to another extension
Description: 
Taking the description from the e-mail I sent:
http://www.spinics.net/lists/asterisk/msg109496.html

Hello,

Information:
gcc -v: gcc version 4.3.3 (Debian 4.3.3-3)
     os: Debian/Testing

Pulled latest release from asterisk site, compiled, installed it.

I have a barebones configuration:
$ ls -l asterisk
extensions.conf
modules.conf
sip.conf
users.conf
voicemail.conf

You can see them here:
http://home.comcast.net/~jpiszcz/20090418/extensions.conf
http://home.comcast.net/~jpiszcz/20090418/modules.conf
http://home.comcast.net/~jpiszcz/20090418/sip.conf
http://home.comcast.net/~jpiszcz/20090418/users.conf
http://home.comcast.net/~jpiszcz/20090418/voicemail.conf

When I perform the following actions, asterisk segfaults:

1. Dial *61.
2. Enter password: XXXX
3. Enter 3 for advanced options.
4. Press 5 to leave a message, press * to return to the main menu.
5. Extension: 6000
6. Please leave your message after the tone, when done, please hangup or
    press the pound key (it segfaults right after it says pound key)
7. Segmentation fault

   == Using SIP RTP CoS mark 5
     -- Executing [*61 at line1:1] VoiceMailMain("SIP/line1-01d646b0",
"6001") in new stack
     -- <SIP/line1-01d646b0> Playing 'vm-password.gsm' (language 'en')
DTMF begin '1' received on SIP/line1-01d646b0
DTMF begin ignored '1' on SIP/line1-01d646b0
DTMF end '1' received on SIP/line1-01d646b0, duration 190 ms
DTMF end passthrough '1' on SIP/line1-01d646b0
/DTMF begin '2' received on SIP/line1-01d646b0
DTMF begin ignored '2' on SIP/line1-01d646b0
DTMF end '2' received on SIP/line1-01d646b0, duration 130 ms
DTMF end passthrough '2' on SIP/line1-01d646b0
DTMF begin '3' received on SIP/line1-01d646b0
DTMF begin ignored '3' on SIP/line1-01d646b0
DTMF end '3' received on SIP/line1-01d646b0, duration 130 ms
DTMF end passthrough '3' on SIP/line1-01d646b0
DTMF begin '4' received on SIP/line1-01d646b0
DTMF begin ignored '4' on SIP/line1-01d646b0
DTMF end '4' received on SIP/line1-01d646b0, duration 170 ms
DTMF end passthrough '4' on SIP/line1-01d646b0
DTMF begin '#' received on SIP/line1-01d646b0
DTMF begin ignored '#' on SIP/line1-01d646b0
DTMF end '#' received on SIP/line1-01d646b0, duration 170 ms
DTMF end passthrough '#' on SIP/line1-01d646b0
     -- <SIP/line1-01d646b0> Playing 'vm-youhave.gsm' (language 'en')
     -- <SIP/line1-01d646b0> Playing 'vm-no.gsm' (language 'en')
     -- <SIP/line1-01d646b0> Playing 'vm-messages.gsm' (language 'en')
     -- <SIP/line1-01d646b0> Playing 'vm-opts.gsm' (language 'en')
     -- <SIP/line1-01d646b0> Playing 'vm-helpexit.gsm' (language 'en')
DTMF begin '3' received on SIP/line1-01d646b0
DTMF begin ignored '3' on SIP/line1-01d646b0
DTMF end '3' received on SIP/line1-01d646b0, duration 130 ms
DTMF end passthrough '3' on SIP/line1-01d646b0
     -- <SIP/line1-01d646b0> Playing 'vm-leavemsg.gsm' (language 'en')
     -- <SIP/line1-01d646b0> Playing 'vm-starmain.gsm' (language 'en')
     -- <SIP/line1-01d646b0> Playing 'vm-leavemsg.gsm' (language 'en')
DTMF begin '5' received on SIP/line1-01d646b0
DTMF begin ignored '5' on SIP/line1-01d646b0
     -- <SIP/line1-01d646b0> Playing 'vm-starmain.gsm' (language 'en')
DTMF end '5' received on SIP/line1-01d646b0, duration 170 ms
DTMF end passthrough '5' on SIP/line1-01d646b0
     -- <SIP/line1-01d646b0> Playing 'vm-extension.gsm' (language 'en')
DTMF begin '6' received on SIP/line1-01d646b0
DTMF begin ignored '6' on SIP/line1-01d646b0
DTMF end '6' received on SIP/line1-01d646b0, duration 170 ms
DTMF end passthrough '6' on SIP/line1-01d646b0
DTMF begin '0' received on SIP/line1-01d646b0
DTMF begin ignored '0' on SIP/line1-01d646b0
DTMF end '0' received on SIP/line1-01d646b0, duration 130 ms
DTMF end passthrough '0' on SIP/line1-01d646b0
DTMF begin '0' received on SIP/line1-01d646b0
DTMF begin ignored '0' on SIP/line1-01d646b0
DTMF end '0' received on SIP/line1-01d646b0, duration 170 ms
DTMF end passthrough '0' on SIP/line1-01d646b0
DTMF begin '0' received on SIP/line1-01d646b0
DTMF begin ignored '0' on SIP/line1-01d646b0
DTMF end '0' received on SIP/line1-01d646b0, duration 170 ms
DTMF end passthrough '0' on SIP/line1-01d646b0
     -- <SIP/line1-01d646b0> Playing 'digits/6.gsm' (language 'en')
     -- <SIP/line1-01d646b0> Playing 'digits/0.gsm' (language 'en')
     -- <SIP/line1-01d646b0> Playing 'digits/0.gsm' (language 'en')
     -- <SIP/line1-01d646b0> Playing 'digits/0.gsm' (language 'en')
     -- <SIP/line1-01d646b0> Playing 'vm-intro.gsm' (language 'en')
     -- <SIP/line1-01d646b0> Playing 'beep.gsm' (language 'en')
Segmentation fault (core dumped)

Here is a backtrace:

Core was generated by `/vapp/sbin/asterisk -vvvvvvvvvvv'.
Program terminated with signal 11, Segmentation fault.
[New process 23729]
[New process 23717]
[New process 23721]
[New process 23728]
[New process 23718]
[New process 23723]
[New process 23719]
[New process 23722]
[New process 23720]
[New process 23726]
[New process 23727]
https://issues.asterisk.org/view.php?id=0  0x00000000004d8bb3 in tzload
(name=0x536b26 "posixrules",
     sp=0x7f7f84076ba0, doextend=0) at stdtime/localtime.c:292
292                             if ((strlen(p) + strlen(name) + 1) >=
sizeof fullname)
(gdb) bt
https://issues.asterisk.org/view.php?id=0  0x00000000004d8bb3 in tzload
(name=0x536b26 "posixrules",
     sp=0x7f7f84076ba0, doextend=0) at stdtime/localtime.c:292
https://issues.asterisk.org/view.php?id=1  0x00000000004d94bf in tzparse
(name=0x7f7f8406c7a5 "",
sp=0x7f7f84076ba0,
     lastditch=<value optimized out>) at stdtime/localtime.c:811
https://issues.asterisk.org/view.php?id=2  0x00000000004d9152 in tzload
(name=<value optimized out>,
sp=0x881280,
     doextend=1) at stdtime/localtime.c:450
https://issues.asterisk.org/view.php?id=3  0x00000000004da92d in ast_tzset
(zone=0x7f7f741e5bf9 "UTC")
     at stdtime/localtime.c:1029
https://issues.asterisk.org/view.php?id=4  0x00000000004db98c in ast_localtime
(timep=0x7f7f8407c500,
     tmp=0x7f7f84076ba0, zone=0x0) at stdtime/localtime.c:1142
https://issues.asterisk.org/view.php?id=5  0x00007f7f741d332f in get_date
(s=0x7f7f84086490 "0\005\210",
len=256)
     at app_voicemail.c:3788
https://issues.asterisk.org/view.php?id=6  0x00007f7f741dfb1a in leave_voicemail
(chan=0x87f5f0,
     ext=<value optimized out>, options=0x7f7f84090c00) at
app_voicemail.c:4476
https://issues.asterisk.org/view.php?id=7  0x00007f7f741e1ab0 in forward_message
(chan=0x87f5f0, context=0x0,
     vms=0x7f7f84090d40, sender=0x7f7f84096e10,
     fmt=0x7f7f743ee4e0 "wav49|gsm|wav", flag=1, record_gain=0 '\0')
     at app_voicemail.c:5608
https://issues.asterisk.org/view.php?id=8  0x00007f7f741e2ece in vm_execmain
(chan=0x87f5f0,
     data=<value optimized out>) at app_voicemail.c:7999
https://issues.asterisk.org/view.php?id=9  0x00000000004aedf5 in
pbx_extension_helper (c=0x87f5f0,
     con=<value optimized out>, context=0x87f848 "line1", exten=0x87f898
"*61",
     priority=1, label=0x0, callerid=0x8794b0 "anonymous",
action=E_SPAWN,
     found=0x7f7f8409c03c, combined_find_spawn=1) at pbx.c:942
https://issues.asterisk.org/view.php?id=10 0x00000000004b039a in __ast_pbx_run
(c=0x87f5f0, args=0x0) at
pbx.c:3614
https://issues.asterisk.org/view.php?id=11 0x00000000004b160b in pbx_thread
(data=0x536b26) at pbx.c:3974
https://issues.asterisk.org/view.php?id=12 0x00000000004e6c0c in dummy_start
(data=<value optimized out>)
     at utils.c:861
https://issues.asterisk.org/view.php?id=13 0x00007f7f8b531faa in start_thread ()
from /lib/libpthread.so.0
https://issues.asterisk.org/view.php?id=14 0x00007f7f87bc62bd in clone () from
/lib/libc.so.6
https://issues.asterisk.org/view.php?id=15 0x0000000000000000 in ?? ()
(gdb)


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

---------------------------------------------------------------------- 
 (0106140) svnbot (reporter) - 2009-06-08 14:39
 https://issues.asterisk.org/view.php?id=14932#c106140 
---------------------------------------------------------------------- 
Repository: asterisk
Revision: 199634

_U  branches/1.6.2/
U   branches/1.6.2/include/asterisk/utils.h

------------------------------------------------------------------------
r199634 | seanbright | 2009-06-08 14:39:31 -0500 (Mon, 08 Jun 2009) | 39
lines

Merged revisions 199630 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/trunk

................
  r199630 | seanbright | 2009-06-08 15:33:09 -0400 (Mon, 08 Jun 2009) | 32
lines
  
  Merged revisions 199626,199628 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r199626 | seanbright | 2009-06-08 15:24:32 -0400 (Mon, 08 Jun 2009) |
21 lines
    
    Increase the size of our thread stack on 64 bit processors.
    
    We were setting the stack size for each thread to 240KB regardless of
    architecture, which meant that in some scenarios we actually had less
available
    stack space on 64 bit processors (pointers use 8 bytes instead of 4). 
So now we
    calculate the stack size we reserve based on the platform's
__WORDSIZE, which
    gives us:
    
         32 bit -> 240KB
         64 bit -> 496KB
        128 bit -> 1008KB (that's right, we're ready for 128 bit
processors)
    
    Patch typed by me but written by several members of #asterisk-dev,
including
    Kevin, Tilghman, and Qwell.
    
    (closes issue https://issues.asterisk.org/view.php?id=14932)
    Reported by: jpiszcz
    Patches:
          06052009_issue14932.patch uploaded by seanbright (license 71)
    Tested by: seanbright
  ........
    r199628 | seanbright | 2009-06-08 15:28:33 -0400 (Mon, 08 Jun 2009) |
2 lines
    
    Fix a typo in the stack size calculation just introduced.
  ........
................

------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=199634 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2009-06-08 14:39 svnbot         Checkin                                      
2009-06-08 14:39 svnbot         Note Added: 0106140                          
======================================================================




More information about the asterisk-bugs mailing list