Oleg,

This is great information! Please go ahead and open a Jira on this so that we can keep track of the issue. More info on Jira can be found here:
http://wiki.freeswitch.org/wiki/Reporting_Bugs

Thanks,
Michael

On Wed, Jul 25, 2012 at 8:47 AM, Oleg Khovayko <khovayko@gmail.com> wrote:
Hi,

After recent upgrade, FreeSWITCH was unable to start.
During startup, it generates SIGSEGV, and terminated.


I investigated, what happening, and found - problem was in the obsolete
mod_file_string (see debug log below).
I disabled load this module, and FS works OK.

I think, need remove this module from the repository, or make another
steps, for preserve this crash.


Thanks,

Oleg



  /usr/local/freeswitch/bin/freeswitch  -u sip -g sip  -hp -nonat


Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x28901040 (LWP 100138)]
0x2818cb53 in switch_loadable_module_process (key=0x28bfdb80
"mod_file_string", new_module=0x295c51b8) at
src/switch_loadable_module.c:321
321                                     for (i = 0; ptr->extens[i]; i++) {
(gdb) p i
No symbol "i" in current context.
(gdb) l
316                     for (ptr =
new_module->module_interface->file_interface; ptr; ptr = ptr->next) {
317                             if (!ptr->interface_name) {
318 switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_CRIT, "Failed to
load file interface from %s due to no interface name.\n", key);
319                             } else {
320                                     int i;
321                                     for (i = 0; ptr->extens[i]; i++) {
322 switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_NOTICE, "Adding
File Format '%s'\n", ptr->extens[i]);
323                                             if
(switch_event_create(&event, SWITCH_EVENT_MODULE_LOAD) ==
SWITCH_STATUS_SUCCESS) {
324 switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "type",
"file");
325 switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "name",
ptr->extens[i]);
(gdb) p ptr
$1 = (const switch_file_interface_t *) 0x295c5140
(gdb) p *ptr
$2 = {interface_name = 0x294d62b3 "mod_file_string", file_open =
0x294d6040 <file_string_file_open>, file_close = 0x294d5cf0
<file_string_file_close>,
   file_truncate = 0, file_read = 0x294d5f80 <file_string_file_read>,
file_write = 0, file_read_video = 0x294d5c20 <file_string_file_seek>,
file_write_video = 0,
   file_seek = 0, file_set_string = 0x294d7520
<mod_file_string_module_interface+456>, file_get_string = 0, extens =
0x0, rwlock = 0x295c5188, refs = 0,
   reflock = 0x295c51a0, parent = 0x295c50c0, next = 0x0}
(gdb) p i
No symbol "i" in current context.
(gdb) where
#0  0x2818cb53 in switch_loadable_module_process (key=0x28bfdb80
"mod_file_string", new_module=0x295c51b8) at
src/switch_loadable_module.c:321
#1  0x2818e32e in switch_loadable_module_load_module_ex (dir=0x2890d400
"/usr/local/freeswitch/mod", fname=Variable "fname" is not available.
) at src/switch_loadable_module.c:1374
#2  0x2818fe3f in switch_loadable_module_init (autoload=SWITCH_TRUE) at
src/switch_loadable_module.c:1675
#3  0x2818586a in switch_core_init_and_modload (flags=68097,
console=SWITCH_TRUE, err=0xbfbfebec) at src/switch_core.c:1941
#4  0x0804a560 in main (argc=7, argv=0xbfbfec4c) at src/switch.c:1027
(gdb)




_________________________________________________________________________
Professional FreeSWITCH Consulting Services:
consulting@freeswitch.org
http://www.freeswitchsolutions.com

FreeSWITCH-powered IP PBX: The CudaTel Communication Server
http://www.cudatel.com

Official FreeSWITCH Sites
http://www.freeswitch.org
http://wiki.freeswitch.org
http://www.cluecon.com

Join Us At ClueCon - Aug 7-9, 2012

FreeSWITCH-dev mailing list
FreeSWITCH-dev@lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev
http://www.freeswitch.org



--
Michael S Collins
Twitter: @mercutioviz
http://www.FreeSWITCH.org
http://www.ClueCon.com
http://www.OSTAG.org