[Home]

Summary:ASTERISK-06382: crash on voicemail config reload
Reporter:Roy Sigurd Karlsbakk (rkarlsba)Labels:
Date Opened:2006-02-21 03:02:37.000-0600Date Closed:2008-01-15 16:56:46.000-0600
Priority:MinorRegression?No
Status:Closed/CompleteComponents:Applications/app_voicemail
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:
Description:crash on reload of voicemail config. see backtrace below...

****** ADDITIONAL INFORMATION ******

(gdb) bt
#0  0xb71fafe3 in load_config () at app_voicemail.c:5888
#1  0x0805c0db in ast_module_reload (name=0x0) at loader.c:261
#2  0x0809282c in handle_reload (fd=28, argc=1, argv=0xb70ce740) at cli.c:165
#3  0x08092558 in ast_cli_command (fd=28, s=0xb58c9e28 <Address 0xb58c9e28 out of bounds>) at cli.c:1384
#4  0x080bee36 in netconsole (vconsole=0x812e110) at asterisk.c:531
ASTERISK-1  0xb7fb2b63 in start_thread () from /lib/tls/libpthread.so.0
ASTERISK-2  0xb7ede18a in clone () from /lib/tls/libc.so.6
#0  0xb71fafe3 in load_config () at app_voicemail.c:5888
       __list_next = (struct ast_vm_user *) 0xb5a00468
       __list_prev = (struct ast_vm_user *) 0xb58c9e28
       cur = (struct ast_vm_user *) 0xb5a00018
       zcur = (struct vm_zone *) 0xb5a00018
       zl = (struct vm_zone *) 0xb58c9e28
       cfg = (struct ast_config *) 0x81a07c0
       cat = 0x0
       var = (struct ast_variable *) 0x0
       notifystr = 0xb58c9e28 <Address 0xb58c9e28 out of bounds>
       smdistr = 0xb58c9e28 <Address 0xb58c9e28 out of bounds>
       astattach = 0x1 <Address 0x1 out of bounds>
       astsearch = 0xb58c9e28 <Address 0xb58c9e28 out of bounds>
       astsaycid = 0xb58c9e28 <Address 0xb58c9e28 out of bounds>
       send_voicemail = 0xb58c9e28 <Address 0xb58c9e28 out of bounds>
       astcallop = 0xb58c9e28 <Address 0xb58c9e28 out of bounds>
       astreview = 0xb58c9e28 <Address 0xb58c9e28 out of bounds>
       astskipcmd = 0xb58c9e28 <Address 0xb58c9e28 out of bounds>
       asthearenv = 0xb58c9e28 <Address 0xb58c9e28 out of bounds>
       astsaydurationinfo = 0xb58c9e28 <Address 0xb58c9e28 out of bounds>
       astsaydurationminfo = 0x1 <Address 0x1 out of bounds>
       silencestr = 0xb58c9e28 <Address 0xb58c9e28 out of bounds>
       maxmsgstr = 0xb5a00018 "default"
       astdirfwd = 0xb58c9e28 <Address 0xb58c9e28 out of bounds>
       thresholdstr = 0xb58c9e28 <Address 0xb58c9e28 out of bounds>
       fmt = 0xb58c9e28 <Address 0xb58c9e28 out of bounds>
       astemail = 0xb58c9e28 <Address 0xb58c9e28 out of bounds>
       astmailcmd = 0xb58c9e28 <Address 0xb58c9e28 out of bounds>
       s = 0xb5a00468 "default"
       q = 0xb5800010 ""
       stringp = 0x0
       dialoutcxt = 0xb58c9e28 <Address 0xb58c9e28 out of bounds>
       callbackcxt = 0xb58c9e28 <Address 0xb58c9e28 out of bounds>
       exitcxt = 0xb58c9e28 <Address 0xb58c9e28 out of bounds>
       extpc = 0xb58c9e28 <Address 0xb58c9e28 out of bounds>
       emaildateformatstr = 0xb58c9e28 <Address 0xb58c9e28 out of bounds>
       x = 0
       tmpadsi = {135923648, -1221998456, 2313, -1208268828}
#1  0x0805c0db in ast_module_reload (name=0x0) at loader.c:261
       m = (struct module_symbols *) 0x81c9234
       cur = (struct module *) 0x81c9230
       res = 2
       i = 136090160
       oldversion = 144
       reload = (int (*)(void)) 0xb71f9d40 <reload>
#2  0x0809282c in handle_reload (fd=28, argc=1, argv=0xb70ce740) at cli.c:165
       x = 28
       res = -1249075672
#3  0x08092558 in ast_cli_command (fd=28, s=0xb58c9e28 <Address 0xb58c9e28 out of bounds>) at cli.c:1384
       argv = {0x81d5ee0 "reload", 0x0, 0x81ae71e "440/250,0/3250", 0x81ae722 "250,0/3250", 0x0, 0xb70ce890 "reload ", 0xb70ce890 "reload ", 0xb70ce890 "reload ",
 0xb70ce890 "reload ", 0xb70ce8ad "rel\"", 0xb70cea8f "·vm24", 0xb70ce890 "reload ", 0xb70cea8f "·vm24", 0x0, 0x0, 0x0, 0x0, 0x0, 0x65462075 <Address 0x65462075 out of bounds>,
 0x0, 0x313a3431 <Address 0x313a3431 out of bounds>, 0x31000000 <Address 0x31000000 out of bounds>, 0x0, 0x30303220 <Address 0x30303220 out of bounds>,
 0x36 <Address 0x36 out of bounds>, 0x0, 0x0, 0xffffffff <Address 0xffffffff out of bounds>, 0x0, 0x0, 0x0, 0x0, 0x36383669 <Address 0x36383669 out of bounds>, 0x0, 0x0, 0x0,
 0x0, 0x0, 0x0, 0x0, 0x0, 0xb7f30a00 "", 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6f6e2800 <Address 0x6f6e2800 out of bounds>, 0x29656e <Address 0x29656e out of bounds>, 0x0, 0x0, 0x0,
 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xb7f37e80 "\210\035\023", 0x812e110 "\034", 0xb70ce890 "reload ", 0xb7eea369 "\201Ã\027Û\004"}
       e = (struct ast_cli_entry *) 0x811e158
       x = 1
       dup = 0x81d5ee0 "reload"
       tws = 1
#4  0x080bee36 in netconsole (vconsole=0x812e110) at asterisk.c:531
       hostname = "vm24", '\0' <repeats 59 times>
       tmp = "reload \000\000MATCHESARRAY \"rel\" \"rel\"\000\000\"", '\0' <repeats 372 times>, "$\216ç·", '\0' <repeats 12 times>, "J", '\0' <repeats 19 times>, "\020\000à¶\200~ó·\020\000à¶@ÿϵxê\f·Ë}ç·\020\000à¶@ÿϵx%'·H '·@ÿϵØê\f·7h&·@ÿϵÀ$à¶\016\000\000\000âf&·"
       res = -1249075672
       fds = {{fd = 28, events = 1, revents = 1}, {fd = 29, events = 1, revents = 0}}
ASTERISK-1  0xb7fb2b63 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
ASTERISK-2  0xb7ede18a in clone () from /lib/tls/libc.so.6
No symbol table info available.
Comments:By: Matt O'Gorman (mogorman) 2006-02-22 13:13:09.000-0600

Committed revision 10766.

By: Digium Subversion (svnbot) 2008-01-15 16:56:46.000-0600

Repository: asterisk
Revision: 10766

U   trunk/apps/app_voicemail.c
U   trunk/include/asterisk/linkedlists.h

------------------------------------------------------------------------
r10766 | mogorman | 2008-01-15 16:56:46 -0600 (Tue, 15 Jan 2008) | 5 lines

bug in the linkedlists macros where the prev node
was improperly managed when doing removals or insertions.
also solved issues with app_voicemail init. and reload
solves bug ASTERISK-6382

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

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