Hi Marius,

I hope this is what your after!

(gdb) add-symbol-file /lib/kamailio/modules/topoh.so 0xb7004000+0x00001d30
add symbol table from file "/lib/kamailio/modules/topoh.so" at
.text_addr = 0xb7005d30
(y or n) y
Reading symbols from /lib/kamailio/modules/topoh.so...done.
(gdb) x/s 0xb70070d9
0xb70070d9 <th_skip_msg+9>: <Address 0xb70070d9 out of bounds>
(gdb) info registers

 

Yes I think it is

Looking at the debug messages I see the CSeq is wrong.

But :

int th_skip_msg(sip_msg_t *msg)
{
        if((get_cseq(msg)->method_id)&(METHOD_REGISTER|METHOD_PUBLISH))
                return 1;

        return 0;
}

As the cseq is wrong the get_cseq macro probably returns a NULL Pointer who gets dereferenced (BANG the crash). Any other Ideas ?!

The patch is trivial ( if(!get_cseq(msg))) parse_cseq(....) ) something in this line. Daniel, What do you think ?

Marius



Thanks Marius.

Glad that we were able to find the issue.

Regards
Brian