Summary:ASTERISK-07710: ast crashes/gets confused, under diff situations when using cisco phones.
Reporter:Eric Cristianini (linuxh)Labels:
Date Opened:2006-09-10 12:16:50Date Closed:2006-09-17 16:00:33
Versions:Frequency of
Environment:Attachments:( 0) bt_full_original.txt
( 1) bt_full.txt
( 2) bt_original.txt
( 3) bt.txt
( 4) thread_apply_all_bt_orig.txt
( 5) thread_apply_all_bt.txt
Description:I was reading some posts regarding ast core dump when called and hungup before cisco picks it up, and other situations.

Ok, i got the same with asterisk 1.2.11, depending on machine/build (slackware linux, diff kernels build, at diff machines) i get a crash, a libc free warning,, or both. If i call my cisco 2 times (2 calls),, and when i try 2 answer, it crashes (its ok with just 1 call at a time)

I just tryied the 1.2.12, its "almost fixed".. but i think the "reason/cause" is another stuff, it just doesnt crash (=,, but dont work as expected anyway.
if i get 2 calls, ast gets confused,, and the phone just doesnt work good (i cant answer the calls, nor the first nor the 2o), almost hang!!.

It happened with 1.2.11 too, but with a core,, all the times.


Probably u guys knows all i said before.. but i would like 2 point a thing that im just a bit "paranoid" with it.. and maybe its related.

Take a look at this small piece of log:

skinny_new: tmp->nativeformats=4 fmt=4
   -- skinny_call(Skinny/500@eric-2)
Trying to send: '0
Displaying message '0
Displaying Prompt Status 'Ring-In'

See the "display/trying"  string being send ?

All the time it just shows trash/garbish,, like a dirty buffer, or something being copyied from somewhere from memory... not real data.

Sometimes i get binary trash, some times just text trash....
Wtih both 1.2.11/1.2.12

Sometimes there isnt the ending  '   of begin/end string.

another example.

   -- skinny_call(Skinny/500@eric-2)
Trying to send: '?Z'
Displaying message '?Z'
Displaying Prompt Status 'Ring-In'

Anyway as with 1.2.11 the 1.2.12 isnt great with all of my cisco phones.
from 1.2.11 now to 1.2.12, it just stopped core dump.

My system:
i got ast 1.2.11/1.2.12
Same behavior at diff. machines, so i dont think its machine/build related.
Cisco IP PHONES, lots of 7910, same problem with all them.

I was using AST 1.0.5 ant it works great (no callerid stuff on my ciscos, thats why i did the upgrade)

AST is great (=

Sorry for anything wrong i said/did
Comments:By: Eric Cristianini (linuxh) 2006-09-10 13:23:21

Ok, i managed get the 1.2.12 release crash too

Just need 2 make a call to one cisco ipphone (From sip), then a call 2 a sip from the cisco,,  then call the cisco from a sip.. ok, then it core dump.. 99% of time (19 cores from 20 attempts)

I can do all the debug/gdb stuff if need,, just let me know...

I dont know if the 2 issues are related..


By: Eric Cristianini (linuxh) 2006-09-10 13:50:46

More infos,,,

As i said, i can crash it now, again.... but as i can see its related with the dirty contents as i said above.

I changed the code, so it would display the original "text" var (func. parameter), instead of the "destination place" (after strncpy) ,,, and i got the same trash/garbish...

Every time the "dirty" is "real dirty" with binary stuff and strange chars,,, it would dump,,,,, but when the "dirty" is pure ascii or "small",,, it would just go ahead... and half/work (as i said, its act very strange with my cisco's,,,,, way diff. than before).

I guess the correct would be a message, or just empty,,, like ' '   or ''

Thanx again,,, and sorry being this long... (and by parts)

By: Anthony LaMantia (alamantia) 2006-09-11 10:31:06

well can you post a backtrace from gdb right after the segfault from a unoptimized build of asterisk ?

By: Eric Cristianini (linuxh) 2006-09-13 09:31:03

Yes i can, i was on a trip, come back today,,, will do soon as possible, all them with the 1.2.12 that crashes with the said procedure.

Any with the 1.2.11 ?

Thanx for ur time and att.

By: Serge Vecher (serge-v) 2006-09-13 12:19:31

linuxh: also, please keep in mind that chan_skinny has undergone a major rewrite in trunk since the release of 1.2 branch. This code will very soon be released as 1.4 beta.

By: Eric Cristianini (linuxh) 2006-09-13 16:34:11

Ok, since im not home yet, i cant post the bt related 2 crash when calling from sip and such.

These ones are from calling itself,, (calling its own extension) its one of the ways i find it crash everytime.

Today nite i will post the ones related 2 the issue above,, about the "dirty buffer" stuff.

As the fellow serge-v pointed out,,, maybe all this are fixed in that major rewrite.

By: Eric Cristianini (linuxh) 2006-09-13 20:44:39

Ok, i got the dumps related with the original issue,,

Hope they help...

all them got _original.txt  on their names...


By: Jason Parker (jparker) 2006-09-17 16:00:33

I'm sorry, but I'm going to have to close this bug report.  After having fixed chan_skinny in svn trunk, I can tell you that it will be non-trivial to get this fixed properly.  In order to fix it in 1.2, one would have to rewrite a great deal of the code (even if we fixed this bug, there would be many more waiting for you), and with 1.4 right around the corner, it just isn't worth the effort.