[Asterisk-Users] segfault with chan_capi-cm 0.5.4

Tobias Wolf tobias.wolf at evision.de
Thu Aug 18 07:52:23 MST 2005


Hi,

Armin Schindler schrieb:

>Can you please provide a verbose log level 5 with 'capi debug'?
>A backtrace could be of help too.
>
>  
>
thx for your answer.

i hope these information gives you some insights. i have asterisk write 
an core dump and after that i executed:
    gdb asterisk core.8301 and bt full prints out this:

#0  0x4018dcff in strlen () from /lib/libc.so.6
No symbol table info available.
#1  0x403600f7 in capi_call (c=0x815e008, idest=0xbd9fed64 "\001", 
timeout=0)
    at chan_capi.c:843
        i = (struct ast_capi_pvt *) 0x810e9d8
        p = (struct capi_pipe *) 0x4e
        dest = 0x0
        buffer = "contr1\00001718115852", '\0' <repeats 61 times>, "@"
        buffer_r = '\0' <repeats 80 times>, "contr1\00001718115852", 
'\0' <repeats 1949 times>
        buffer_rp = 0xbd9ff7b6 ""
        called = "\f\20001718115852", '\0' <repeats 66 times>
        calling = '\0' <repeats 79 times>
        bchaninfo = "\000\000"
        CLIR = 0
        CMSG = {ApplId = 1, Command = 2 '\002', Subcommand = 128 '\200',
  Messagenumber = 3, adr = {adrController = 1, adrPLCI = 1, adrNCCI = 1},
  AdditionalInfo = CAPI_COMPOSE, B1configuration = 0x0, B1protocol = 0,
  B2configuration = 0x0, B2protocol = 0, B3configuration = 0x0,
  B3protocol = 0, BC = 0x0, BChannelinformation = 0x0,
  BProtocol = CAPI_COMPOSE,
  CalledPartyNumber = 0xbd9fef54 "\f\20001718115852",
  CalledPartySubaddress = 0x0, CallingPartyNumber = 0x0,
  CallingPartySubaddress = 0x0, CIPmask = 0, CIPmask2 = 0, CIPValue = 16,
  Class = 0, ConnectedNumber = 0x0, ConnectedSubaddress = 0x0, Data32 = 0,
  Data64 = 0, DataHandle = 0, DataLength = 0,
  FacilityConfirmationParameter = 0x0, Facilitydataarray = 0x0,
  FacilityIndicationParameter = 0x0, FacilityRequestParameter = 0x0,
  FacilityResponseParameters = 0x0, FacilitySelector = 0, Flags = 0,
  Function = 0, HLC = 0x0, Info = 0, InfoElement = 0x0, InfoMask = 0,
  InfoNumber = 0, Keypadfacility = 0x0, LLC = 0x0, ManuData = 0x0,
  ManuID = 0, NCPI = 0x0, Reason = 0, Reason_B3 = 0, Reject = 0,
  Useruserdata = 0x0, Data = 0x0, l = 0, p = 0, par = 0x0, m = 0x0,
  buf = '\0' <repeats 179 times>}
        error = 0
#2  0x0805de0b in ast_call (chan=0x815e008, addr=0x0, timeout=0)
    at channel.c:1994
        res = 135646972
#3  0x0805d582 in __ast_request_and_dial (type=0x815cdfc "Capi", format=0,
    data=0x815cefc, timeout=45000, outstate=0xbd9ffad8,
    callerid=0x815d400 "", oh=0xbd9ffa44) at channel.c:1788
        tmp = 0xbd9ff860 ""
        state = 0
        chan = (struct ast_channel *) 0x815e008
        f = (struct ast_frame *) 0x815cefc
        res = 0
        variable = 0x0
#4  0x08079788 in ast_pbx_outgoing_exten (type=0x815cdfc "Capi", format=64,
    data=0x815cefc, timeout=45000, context=0x815d2fc "capi-in",
    exten=0x815d1fc "1000", priority=1, reason=0xbd9ffad8, sync=2,
    callerid=0xafc8 <Address 0xafc8 out of bounds>, variable=0x815d500 "",
    account=0x815df00 "") at pbx.c:4077
        chan = (struct ast_channel *) 0xbd9ffad8
        as = (struct async_stat *) 0x2
        res = -1
        var = 0x0
        tmp = 0x2020206d <Address 0x2020206d out of bounds>
        oh = {context = 0x815d2fc "capi-in", exten = 0x815d1fc "1000",
  priority = 1, callerid = 0x815d400 "", variable = 0x815d500 "",
  account = 0x815df00 ""}
        attr = {__detachstate = 1, __schedpolicy = 1768972643,
  __schedparam = {__sched_priority = 980314413},
  __inheritsched = 1073941760, __scope = 135174112, __guardsize = 135647996,
  __stackaddr_set = -1113589172, __stackaddr = 0x40028d48,
  __stacksize = 135174128}
        __result = 0xffffffff <Address 0xffffffff out of bounds>
        __result = 0xffffffff <Address 0xffffffff out of bounds>
#5  0x407ab8ae in attempt_thread (data=0x815cce8) at pbx_spool.c:226
        res = 0
        reason = 1076032992
#6  0x40027e51 in pthread_start_thread () from /lib/libpthread.so.0
No symbol table info available.
#7  0x401ef92a in clone () from /lib/libc.so.6
No symbol table info available.

This is the output from the asterisk console:

Asterisk Ready.
*CLI> capi debug
CAPI Debugging Enabled
*CLI>     -- Attempting call on Capi/contr1/01718115852 for 
1000 at capi-in:1 (Retry 1)
    -- data = contr1/01718115852
    -- capi request controller = 1
Urgent handler
    -- creating pipe for PLCI=0
  == CAPI Call CAPI/contr1/01718115852-0  (pres=0x00)
Urgent handler
Ouch ... error while writing audio data: : Broken pipe
Segmentation fault

And finally the call file:
Channel: Capi/contr1/01718115852
Context: capi-in
Extension: 1000
Priority: 1

I hope i made now error while generating the backtrace. if so i would 
gladly hear any advice how to produce useful information for debugging 
on my side :)

have a nice day

tobias wolf



More information about the asterisk-users mailing list