[asterisk-dev] res_jabber.c and an empty parser

Julian Lyndon-Smith asterisk at dotr.com
Fri Aug 4 07:12:31 MST 2006


We've had a few core dumps over the past couple of days. After looking 
with gdb, they all seem related to the following:

#14 0x0041b27d in iks_send (prs=0x0, x=0x9e74974) at stream.c:499
#15 0x0040d978 in ast_aji_send (client=0x9c50b50,
     address=0x222b8a9 "myjabberid at jabber.server.co.uk/asterisk",
     message=0x222b8d2 "this is a message")
     at res_jabber.c:1277

Notice that the prs pointer in iks_send is 0x0 - this is passed to 
iks_send by ast_aji_send, using the client->p pointer.

This indicates that client->p (the jabber parser) is invalid. How can 
this happen ? We are not reloading, or restarting anything (servers / IM 
servers / etc).

I have at least 5 cores with the same information.

(a)
#14 0x0096227d in iks_send (prs=0x0, x=0x9c7a35c) at stream.c:499
#15 0x00acd978 in ast_aji_send (client=0x9a80b00,
     address=0x1ed9d79 "myjabberid at jabber.server.co.uk/asterisk",
     message=0x1ed9da4 "this is a message")
     at res_jabber.c:1277

(b)
#15 0x0041b27d in iks_send (prs=0x0, x=0x8979574) at stream.c:499
#16 0x00180978 in ast_aji_send (client=0x869d410,
     address=0x2328d79 "myjabberid at jabber.server.co.uk/asterisk",
     message=0x2328da0 "this is a message")
     at res_jabber.c:1277

etc etc

We could, of course, simply add a check to see if the client->p is valid 
before trying to send the message. That would stop the core dump, but I 
would like to know why it is happening in the first place.

Should I raise a bug ?

Julian.




More information about the asterisk-dev mailing list