Summary:ASTERISK-09257: Asterisk crash
Reporter:german aracil boned (tecnoxarxa)Labels:
Date Opened:2007-04-13 03:11:50Date Closed:2007-07-09 21:20:48
Versions:Frequency of
Environment:Attachments:( 0) chan_sip.c.patch.bug
( 1) chan_sip.c.patch.bug.2
( 2) core.32130.gdb
Description:I don't have solution and problem. Only gdb info from core dump.
I have same crash from older versions in svn.

The system have +-240 peers and +-30 calls at same time.
Comments:By: german aracil boned (tecnoxarxa) 2007-04-13 03:32:36

I add a posible patch for this problem.

I think, asterisk crash when p->callid or callid is null or bad pointers in function find_call(chan_sip.c)

With this patch I added:

if (p->callid && callid) { /* <- This line for test pointers */

  if (req->method == SIP_REGISTER)
    found = (!strcmp(p->callid, callid));
    found = (!strcmp(p->callid, callid) &&
      (!pedanticsipchecking || !tag || ast_strlen_zero(p->theirtag) || !strcmp(p->theirtag, tag))) ;



By: german aracil boned (tecnoxarxa) 2007-04-13 08:31:49


A good patch for chan_sip.c is named chan_sip.c.patch.bug.2

Discart other patch named chan_sip.c.patch.bug

By: Joshua C. Colp (jcolp) 2007-04-13 11:35:33

Fixed in 1.4 as of revision 61641 and trunk as of revision 61642. Thanks!