[Home]

Summary:ASTERISK-12937: Seg. fault when including missing extensions file
Reporter:Tomás Laureano Peralta Tormey (laureano)Labels:
Date Opened:2008-10-19 21:14:28Date Closed:2008-10-20 12:42:41
Priority:MinorRegression?No
Status:Closed/CompleteComponents:Core/FileFormatInterface
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:( 0) gdb_full.txt
( 1) gdb.txt
Description:If a missing file is defined to be included at extensions.conf, Asterisk will segfault when starting or reloading the dialplan configuration.

Example:
[root@asterisk1 asterisk]# cd /etc/asterisk
[root@asterisk1 asterisk]# asterisk -g
[root@asterisk1 asterisk]# asterisk -r
Asterisk SVN-trunk-r142992, Copyright (C) 1999 - 2008 Digium, Inc. and others.
Created by Mark Spencer <markster@digium.com>
Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details.
This is free software, with components licensed under the GNU General Public
License version 2 and other licenses; you are welcome to redistribute it under
certain conditions. Type 'core show license' for details.
=========================================================================
Connected to Asterisk SVN-trunk-r142992 currently running on asterisk1 (pid = 24961)
asterisk1*CLI> exit
[root@asterisk1 asterisk]# sed -i s/";#include \"filename.conf\""/"#include \"filename.conf\""/ extensions.conf
[root@asterisk1 asterisk]# ls -l filename.conf
ls: filename.conf: No such file or directory
[root@asterisk1 asterisk]# asterisk -r
Asterisk SVN-trunk-r142992, Copyright (C) 1999 - 2008 Digium, Inc. and others.
Created by Mark Spencer <markster@digium.com>
Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details.
This is free software, with components licensed under the GNU General Public
License version 2 and other licenses; you are welcome to redistribute it under
certain conditions. Type 'core show license' for details.
=========================================================================
Connected to Asterisk SVN-trunk-r142992 currently running on asterisk1 (pid = 24961)
asterisk1*CLI> dialplan reload
asterisk1*CLI>
Disconnected from Asterisk server

****** STEPS TO REPRODUCE ******

Checkout any revision major to 142991.
Configure, make, install and install the sample files.
Edit extensions.conf and uncomment the line including "filename.conf". Make sure that the file "filename.conf" doesn't exists in the Asterisk configuration directory.
Start asterisk or run "dialplan reload" from the CLI.
Process should segfault.

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

This issue seems to be introduced in the revision 142992.
Comments:By: BJ Weschke (bweschke) 2008-10-19 23:58:47

fixed with r151246 commit to /trunk. Thanks for the accurate report and bt!

By: Digium Subversion (svnbot) 2008-10-20 12:42:40

Repository: asterisk
Revision: 151246

U   trunk/main/config.c
U   trunk/pbx/pbx_config.c

------------------------------------------------------------------------
r151246 | bweschke | 2008-10-20 12:42:39 -0500 (Mon, 20 Oct 2008) | 5 lines

Do NOT attempt to do anything with the ast_config struct when it's been returned as INVALID by the config file interpreter.

(closes issue ASTERISK-12937)


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

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