[Home]

Summary:ASTERISK-16195: Asterisk will not Start - Just crashes.
Reporter:Mike Curry (mcurry)Labels:
Date Opened:2010-06-02 14:37:13Date Closed:2010-06-10 15:13:57
Priority:CriticalRegression?No
Status:Closed/CompleteComponents:Addons/General
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:
Description:I cannot start asterisk, it keeps crashing and core dumping.

Using Centos Linux v5
-----------
Linux f2e6.XXXXX.com 2.6.18-164.15.1.el5 #1 SMP Wed Mar 17 11:30:06 EDT 2010 x86_64 x86_64 x86_64 GNU/Linux


I have this hardware card
-------------------------
-Four (4) span digital T1/E1/J1/PRI PCI-Express x1 3.3V

I am using Fax for Asterisk
---------------------------
Version: 1.6.2.0 and later, on a 64-bit-bit "generic" system
-res_fax-1.6.2.0_1.2.0-x86_64.tar.gz
-res_fax_digium-1.6.2.0_1.2.0-generic_64.tar.gz
-using 1 free, plus 10 purchased licenses.

<removed inline backtrace> - pabelanger

I will also include some config files, as it looks like something is blowing up with a config file...

Please note, I did trim the comments out of the config files for display here... If you need the fill ones, please let me know.


extensions.conf
---------------
[fax-rx]
exten => receive,1,NoOp(**** FAX RECEIVE ****)
exten => receive,n,Set(GLOBAL(FAXCOUNT)=$[ ${GLOBAL(FAXCOUNT)} + 1 ])
exten => receive,n,Set(FAXCOUNT=${GLOBAL(FAXCOUNT)})
exten => receive,n,Set(FAXFILE=fax-${FAXCOUNT}-rx.tif)
exten => receive,n,Set(GLOBAL(LASTFAXCALLERNUM)=${CALLERID(num)})
exten => receive,n,Set(GLOBAL(LASTFAXCALLERNAME)=${CALLERID(name)})
exten => receive,n,NoOp(**** SETTING FAXOPT ****)
exten => receive,n,Set(FAXOPT(ecm)=yes)
exten => receive,n,Set(FAXOPT(headerinfo)=MY FAXBACK RX)
exten => receive,n,Set(FAXOPT(localstationid)=1234567890)
exten => receive,n,Set(FAXOPT(maxrate)=14400)
exten => receive,n,Set(FAXOPT(minrate)=2400)
exten => receive,n,NoOp(FAXOPT(ecm) : ${FAXOPT(ecm)})
exten => receive,n,NoOp(FAXOPT(headerinfo) : ${FAXOPT(headerinfo)})
exten => receive,n,NoOp(FAXOPT(localstationid) : ${FAXOPT(localstationid)})
exten => receive,n,NoOp(FAXOPT(maxrate) : ${FAXOPT(maxrate)})
exten => receive,n,NoOp(FAXOPT(minrate) : ${FAXOPT(minrate)})
exten => receive,n,NoOp(**** RECEIVING FAX : ${FAXFILE} ****)
exten => receive,n,ReceiveFAX(/var/spool/asterisk/fax/${FAXFILE})
; print opts
exten => h,1,NoOp(FAXOPT(ecm) : ${FAXOPT(ecm)})
exten => h,n,NoOp(FAXOPT(filename) : ${FAXOPT(filename)})
exten => h,n,NoOp(FAXOPT(headerinfo) : ${FAXOPT(headerinfo)})
exten => h,n,NoOp(FAXOPT(localstationid) : ${FAXOPT(localstationid)})
exten => h,n,NoOp(FAXOPT(maxrate) : ${FAXOPT(maxrate)})
exten => h,n,NoOp(FAXOPT(minrate) : ${FAXOPT(minrate)})
exten => h,n,NoOp(FAXOPT(pages) : ${FAXOPT(pages)})
exten => h,n,NoOp(FAXOPT(rate) : ${FAXOPT(rate)})
exten => h,n,NoOp(FAXOPT(remotestationid) : ${FAXOPT(remotestationid)})
exten => h,n,NoOp(FAXOPT(resolution) : ${FAXOPT(resolution)})
exten => h,n,NoOp(FAXOPT(status) : ${FAXOPT(status)})
exten => h,n,NoOp(FAXOPT(statusstr) : ${FAXOPT(statusstr)})
exten => h,n,NoOp(FAXOPT(error) : ${FAXOPT(error)})
; do something

[fax-tx]
exten => send,1,NoOp(**** SENDING FAX ****)
exten => send,n,Wait(6)
exten => send,n,Set(GLOBAL(FAXCOUNT)=$[ ${GLOBAL(FAXCOUNT)} + 1 ])
exten => send,n,Set(FAXCOUNT=${GLOBAL(FAXCOUNT)})
exten => send,n,Set(FAXFILE=dw-faxout.tif)
;SET FAX OPTS
exten => send,n,NoOp(**** SETTING FAXOPT ****)
exten => send,n,Set(FAXOPT(ecm)=yes)
exten => send,n,Set(FAXOPT(headerinfo)=Fax from $ {GLOBAL(LASTFAXCALLERNAME)} at ${GLOBAL(LASTFAXCALLERNUM)} was received.)
exten => send,n,Set(FAXOPT(localstationid)=1234567890)
exten => send,n,Set(FAXOPT(maxrate)=14400)
exten => send,n,Set(FAXOPT(minrate)=2400)
; Send the fax
exten => send,n,NoOp(**** SENDING FAX : ${FAXFILE} ****)
exten => send,n,SendFAX(/home/dwayne/faxout/${FAXFILE},d)

; Hangup! Print FAXOPTs
exten => h,1,NoOp(FAXOPT(ecm) : ${FAXOPT(ecm)})
exten => h,n,NoOp(FAXOPT(filename) : ${FAXOPT(filename)})
exten => h,n,NoOp(FAXOPT(headerinfo) : ${FAXOPT(headerinfo)})
exten => h,n,NoOp(FAXOPT(localstationid) : ${FAXOPT(localstationid)})
exten => h,n,NoOp(FAXOPT(maxrate) : ${FAXOPT(maxrate)})
exten => h,n,NoOp(FAXOPT(minrate) : ${FAXOPT(minrate)})
exten => h,n,NoOp(FAXOPT(pages) : ${FAXOPT(pages)})
exten => h,n,NoOp(FAXOPT(rate) : ${FAXOPT(rate)})
exten => h,n,NoOp(FAXOPT(remotestationid) : ${FAXOPT(remotestationid)})
exten => h,n,NoOp(FAXOPT(resolution) : ${FAXOPT(resolution)})
exten => h,n,NoOp(FAXOPT(status) : ${FAXOPT(status)})
exten => h,n,NoOp(FAXOPT(statusstr) : ${FAXOPT(statusstr)})
exten => h,n,NoOp(FAXOPT(error) : ${FAXOPT(error)})

[default]
exten => fax,1,NoOp(**** FAX DETECTED ****)
exten => fax,n,Goto(fax-rx,receive,1)


sip.conf
--------
[general]
context=default                 ; Default context for incoming calls
allowguest=yes                   ; Allow or reject guest calls (default is yes)
allowoverlap=yes                 ; Disable overlap dialing support. (Default is yes)
udpbindaddr=0.0.0.0             ; IP address to bind UDP listen socket to (0.0.0.0 binds to all)
tcpenable=no                    ; Enable server for incoming TCP connections (default is no)
tcpbindaddr=0.0.0.0             ; IP address for TCP server to bind to (0.0.0.0 binds to all interfaces)
tlsenable=no                   ; Enable server for incoming TLS (secure) connections (default is no)
srvlookup=yes                   ; Enable DNS SRV lookups on outbound calls
t38pt_udptl = yes            ; Enables T.38 with FEC error correction.
faxdetect = yes              ; Default false
[authentication]
[1000]
regexten=1000                    ; When they register, create extension 1234
callerid="Mike Curry" <1000>
disallow=all
allow=gsm                        ; GSM consumes far less bandwidth than ulaw
allow=ulaw
allow=alaw
registertrying=yes               ; Send a 100 Trying when the device registers.
type=friend
defaultuser=1000
secret=12345
host=dynamic
context=phones
allow=all

dahdi-channels.conf
-------------------
; Autogenerated by /usr/sbin/dahdi_genconf on Fri Apr 30 12:20:33 2010
; If you edit this file and execute /usr/sbin/dahdi_genconf again,
; your manual changes will be LOST.
; Dahdi Channels Configurations (chan_dahdi.conf)
;
; This is not intended to be a complete chan_dahdi.conf. Rather, it is intended
; to be #include-d by /etc/chan_dahdi.conf that will include the global settings
;

; Span 1: TE2/0/1 "T2XXP (PCI) Card 0 Span 1" (MASTER) B8ZS/ESF
group=0,11
context=fax-out
switchtype = national
signalling = pri_cpe
channel => 1-23
context = default
group = 1
Comments:By: Mike Curry (mcurry) 2010-06-02 14:43:11

UPDATE:

It seems to be an issue with this config file specifically... I am going to guess straight out that it is the comment length...

res_fax_digium.conf
; Maximum expected T.38 delay is a measure in milliseconds and is used to determine the default size of T.38 packets sent to/from the fax stack

maxdelay = 800

By: Paul Belanger (pabelanger) 2010-06-02 14:52:05

Few things:

1. Attach config files and backtraces to the issue do not post them as comments.  It helps to keep the issue clean.

2. Your backtrace is optimized out (see below):

3. I suspect you will need to contact Digium directly, since you are using res_fax_digium. We will see your backtrace first.

---
Thank you for your bug report. In order to move your issue forward, we require a backtrace from the core file produced after the crash. Please see the doc/backtrace.txt file in your Asterisk source directory.

Also, be sure you have DONT_OPTIMIZE enabled in menuselect within the Compiler Flags section, then:

make install

after enabling, reproduce the crash, and then execute the instructions in doc/backtrace.txt.

When complete, attach that file to this issue report. Thanks!



By: Leif Madsen (lmadsen) 2010-06-02 14:54:21

Can you confirm if removing that line resolves the crashing, and placing it back in causes the crashing?

It seems highly unlikely the config file parser is to blame as it is the same in all of Asterisk, and modules don't see comments in the config files.

By: Paul Belanger (pabelanger) 2010-06-10 15:13:56

Since this is related to res_fax_digium, you will need to get support from Digium directly, not the issue tracker.