[SR-Users] Kamailio Unexpectedly Terminating
Akan
forums at akan.net
Fri Jun 22 15:26:27 CEST 2012
Hello,
After doing some research, this is what I found out. On Solaris Sparc
64bit system, there is a mandatory alignment of memory accesses and also
for data types. I went thru the core dump, disassembled the code and
located the instruction that produced the error. The registers addresses
in questioned are on a 4 byte alignment but not an 8 byte or 16 byte
alignment. .The earlier patch must have forced the alignment which is
why the error did not occur in the program common.c. It looks like there
is a similar situation in t_funcs.c.
Here is a link that I found that can better explain:
http://blog.jgc.org/2007/04/debugging-solaris-bus-error-caused-by.html
Core was generated by `/opt/kamailio-3.2/sbin/kamailio'.
Program terminated with signal 10, Bus error.
#0 0xffffffff7bd2b7bc in t_relay_to (p_msg=0x10047c698, proxy=0x0,
proto=0, replicate=0) at t_funcs.c:352
352 if (!t_reply( t, p_msg , 100 ,
0xffffffff7bd2b7b0 <+976>: ldx [ %l7 + %g1 ], %g1
0xffffffff7bd2b7b4 <+980>: ldx [ %g1 ], %g1
0xffffffff7bd2b7b8 <+984>: call 0xffffffff7be9bc80 <t_reply at plt>
*=> 0xffffffff7bd2b7bc <+988>: ldx [ %g1 + 0x38 ], %o3*
0xffffffff7bd2b7c0 <+992>: cmp %o0, 0
0xffffffff7bd2b7c4 <+996>: be,pn %icc, 0xffffffff7bd2bb14
<t_relay_to+1844>
0xffffffff7bd2b7c8 <+1000>: ldx [ %fp + 0x7f7 ], %o0
0xffffffff7bd2b7cc <+1004>: b %xcc, 0xffffffff7bd2b460
<t_relay_to+128>
End of assembler dump.
(gdb) info registers g1
g1 0xffffffff7666c3e4 -2308520988
(gdb) info registers o3
o3 0x18f3d0 1635280
I hope this helps in trying to resolve this problem and to find a
solution. Also, if you need a sparc system to test with, just let me
know. We can help from a sparc perspective.
Thanks
Nathaniel
On 6/12/2012 7:04 PM, Akan wrote:
> I tested the patch and got different results. A core dump was still
> produced but in a different program. I have included the full backtrace.
>
> Thanks
>
> Nathaniel
>
>
> On 6/12/2012 1:10 PM, Akan wrote:
>> Yes, this is a 64bit system
>>
>> Thanks
>>
>> Nathaniel
>>
>>
>> On 6/12/2012 1:50 AM, Daniel-Constantin Mierla wrote:
>>> Hello,
>>>
>>> is it 64bit architecture?
>>>
>>> Cheers,
>>> Daniel
>>>
>>> On 6/11/12 9:12 PM, Akan wrote:
>>>> Here is the information requested:
>>>>
>>>> System = SunOS
>>>> Node = -f
>>>> Release = 5.10
>>>> KernelID = Generic_141444-09
>>>> Machine = sun4u
>>>> BusType = <unknown>
>>>> Serial = <unknown>
>>>> Users = <unknown>
>>>> OEM# = 0
>>>> Origin# = 1
>>>> NumCPU = 1
>>>>
>>>> One machine is a Sun Fire V120, 2g memory, UltraSPARC-IIe 650MHz,
>>>> UltraAX-i2
>>>> The other machine is a Sun Netra T1 200, 1g memory, UltraSparc-IIe
>>>> 500MHz, UltraAX-i2
>>>>
>>>> Thanks
>>>>
>>>> Nathaniel L Keeling
>>>>
>>>>
>>>>
>>>> On 6/11/2012 8:33 AM, Daniel-Constantin Mierla wrote:
>>>>> Hello,
>>>>>
>>>>> I committed a patch that should make it work when realm_prefix is
>>>>> not set for registrar module:
>>>>>
>>>>> http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=d42379da90f2ec87cb5dbb00ebb563c7528ec910
>>>>>
>>>>>
>>>>> For the moment I have no idea why SIGBUS is triggered, i tried to
>>>>> access the structure directly, not via defines, and there is still
>>>>> a problem when realm_prefix is set. It's ok accessing the .len
>>>>> field but not .s of the same structure. The field .s is the first,
>>>>> making me think it's not alignment issue, or it is something very
>>>>> specific to this system.
>>>>>
>>>>> Overall, I am not familiar with sparc/solaris systems, maybe if
>>>>> you send here full details about OS version, architecture and CPU
>>>>> type, others using similar systems can give hints.
>>>>>
>>>>> Jason reported that on solaris with x86, this problem was not
>>>>> encountered.
>>>>>
>>>>> Cheers,
>>>>> Daniel
>>>>>
>>>>> On 6/4/12 8:57 AM, Daniel-Constantin Mierla wrote:
>>>>>> Hello,
>>>>>>
>>>>>> still strange with the crash on that if condition. One of your
>>>>>> previous reports showed a different line, when assigning a
>>>>>> pointer. Also, I kind of understood that save() was ok, but
>>>>>> lookup() not. Is not the case anymore as the backtrace shows.
>>>>>>
>>>>>> SIGBUS can occur because of alignment in memory which is thrown
>>>>>> in solaris, does not happen in linux flavours. I am thinking of
>>>>>> putting the prefix field first so the access to it is at
>>>>>> beginning of the straucture, just to see if that is the problem,
>>>>>> although is should not be.
>>>>>>
>>>>>> I will add a patch soon, otherwise I am out of ideas for the
>>>>>> moment with the SIGBUS, I would need access to the machine to do
>>>>>> some testing by myself.
>>>>>>
>>>>>> Cheers,
>>>>>> Daniel
>>>>>>
>>>>>> On 6/2/12 10:36 PM, Akan wrote:
>>>>>>> Ok, I reloaded the servers with v3.2 from git without performing
>>>>>>> the checkout and with just the master branch. Reran my tests on
>>>>>>> 2 servers and Kamailio terminated with a core dump. I have
>>>>>>> included the full trace of one of the servers. The other trace
>>>>>>> has the same results.
>>>>>>>
>>>>>>> Thanks
>>>>>>>
>>>>>>> Nathaniel
>>>>>>>
>>>>>>> On 5/30/2012 2:25 PM, Daniel-Constantin Mierla wrote:
>>>>>>>> Hello,
>>>>>>>>
>>>>>>>> On 5/30/12 9:10 PM, Akan wrote:
>>>>>>>>> This was a re-pull from the git master. I had deleted all of
>>>>>>>>> the old files and issued these commands:
>>>>>>>>>
>>>>>>>>> git clone --depth 1 git://git.sip-router.org/sip-router kamailio
>>>>>>>>> cd kamailio
>>>>>>>>> git checkout -b 3.2 origin/3.2
>>>>>>>>>
>>>>>>>>> This is the source that I got. Could this be a problem within
>>>>>>>>> git?
>>>>>>>> do not checkout branch 3.2, just try with the master branch, as
>>>>>>>> said, not all patches are backported to stable 3.2.
>>>>>>>>
>>>>>>>> For sake of completeness, here are some guidelines:
>>>>>>>> http://www.kamailio.org/wiki/install/devel/git
>>>>>>>>
>>>>>>>> Cheers,
>>>>>>>> Daniel
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users
>>>>>>> mailing list
>>>>>>> sr-users at lists.sip-router.org
>>>>>>> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
>>>>>>
>>>>>> --
>>>>>> Daniel-Constantin Mierla -http://www.asipto.com
>>>>>> http://twitter.com/#!/miconda -http://www.linkedin.com/in/miconda
>>>>>> Kamailio Advanced Training, Seattle, USA, Sep 23-26, 2012
>>>>>> -http://asipto.com/u/katu
>>>>>> Kamailio Practical Workshop, Netherlands, Sep 10-12, 2012
>>>>>> -http://asipto.com/u/kpw
>>>>>>
>>>>>>
>>>>>
>>>>> --
>>>>> Daniel-Constantin Mierla -http://www.asipto.com
>>>>> http://twitter.com/#!/miconda -http://www.linkedin.com/in/miconda
>>>>> Kamailio Advanced Training, Seattle, USA, Sep 23-26, 2012
>>>>> -http://asipto.com/u/katu
>>>>> Kamailio Practical Workshop, Netherlands, Sep 10-12, 2012
>>>>> -http://asipto.com/u/kpw
>>>>>
>>>>>
>>>>> No virus found in this message.
>>>>> Checked by AVG - www.avg.com <http://www.avg.com>
>>>>> Version: 2012.0.2178 / Virus Database: 2433/5061 - Release Date:
>>>>> 06/10/12
>>>>>
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing
>>>> list
>>>> sr-users at lists.sip-router.org
>>>> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
>>>
>>
>>
>>
>> _______________________________________________
>> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
>> sr-users at lists.sip-router.org
>> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
>>
>>
>>
>> -----
>> No virus found in this message.
>> Checked by AVG - www.avg.com
>> Version: 2012.0.2180 / Virus Database: 2433/5064 - Release Date:
>> 06/12/12
>>
>>
>
>
-------------- next part --------------
Core was generated by `./kamailio'.
Program terminated with signal 10, Bus error.
#0 0xffffffff7bd2b7bc in t_relay_to (p_msg=0x10047c698, proxy=0x0, proto=0, replicate=0) at t_funcs.c:352
352 if (!t_reply( t, p_msg , 100 ,
(gdb) bt full
#0 0xffffffff7bd2b7bc in t_relay_to (p_msg=0x10047c698, proxy=0x0, proto=0, replicate=0) at t_funcs.c:352
ret = 0
new_tran = <value optimized out>
t = 0xffffffff766741c0
dst = {send_sock = 0x0, to = {s = {sa_family = 65535, sa_data = "ÿÿ\177ÿÓá\000\000\000\001\000\003\063\060"}, sin = {sin_family = 65535,
sin_port = 65535, sin_addr = {S_un = {S_un_b = {s_b1 = 127 '\177', s_b2 = 255 'ÿ', s_b3 = 211 'Ó', s_b4 = 225 'á'}, S_un_w = {s_w1 = 32767,
s_w2 = 54241}, S_addr = 2147472353}}, sin_zero = "\000\000\000\001\000\003\063\060"}, sin6 = {sin6_family = 65535, sin6_port = 65535,
sin6_flowinfo = 2147472353, sin6_addr = {_S6_un = {_S6_u8 = "\000\000\000\001\000\003\063\060\000\000\000\000\000\000\003p", _S6_u32 = {1,
209712, 0, 880}, __S6_align = 1}}, sin6_scope_id = 0, __sin6_src_id = 0}}, id = 0, proto = 0 '\000', send_flags = {f = 0 '\000',
blst_imask = 0 '\000'}}
port = <value optimized out>
host = {s = 0xffffffff788076d0 "", len = -1}
#1 0x000000010002f314 in do_action (h=0xffffffff7fffe220, a=0x1004a11f0, msg=0x10047c698) at action.c:1145
ret = -5
v = <value optimized out>
dst = {send_sock = 0x1004a07f8, to = {s = {sa_family = 0, sa_data = "\000\001\000AÊ\200ÿÿÿÿ\177ÿÙ\021"}, sin = {sin_family = 0, sin_port = 1,
sin_addr = {S_un = {S_un_b = {s_b1 = 0 '\000', s_b2 = 65 'A', s_b3 = 202 'Ê', s_b4 = 128 '\200'}, S_un_w = {s_w1 = 65, s_w2 = 51840},
S_addr = 4311680}}, sin_zero = "ÿÿÿÿ\177ÿÙ\021"}, sin6 = {sin6_family = 0, sin6_port = 1, sin6_flowinfo = 4311680, sin6_addr = {
_S6_un = {_S6_u8 = "ÿÿÿÿ\177ÿÙ\021\000\000\000\001\000\003¢Ô", _S6_u32 = {4294967295, 2147473681, 1, 238292}, __S6_align = 4294967295}},
sin6_scope_id = 0, __sin6_src_id = 9504}}, id = -1, proto = 122 'z', send_flags = {f = 160 ' ', blst_imask = 111 'o'}}
tmp = <value optimized out>
new_uri = <value optimized out>
end = <value optimized out>
crt = <value optimized out>
cmd = <value optimized out>
len = <value optimized out>
user = <value optimized out>
uri = {user = {s = 0x100471268 "", len = 1}, passwd = {
s = 0x1004216a1 " (((((", ' ' <repeats 18 times>, "H", '\020' <repeats 15 times>, "\204\204\204\204\204\204\204\204\204\204\020\020\020\020\020\020\020\201\201\201\201\201\201", '\001' <repeats 20 times>, "\020\020\020\020\020\020\202\202\202\202\202\202", '\002' <repeats 20 times>, "\020\020\020\020 ", len = 1}, host = {s = 0xffffffffffffffff <Address 0xffffffffffffffff out of bounds>, len = 1}, port = {s = 0x0, len = 0}, params = {
s = 0xffffffff7ec3c000 "", len = 0}, sip_params = {s = 0x4216a1 <Address 0x4216a1 out of bounds>, len = 0}, headers = {s = 0x0, len = 0},
port_no = 0, proto = 0, type = ERROR_URI_T, flags = 0, transport = {s = 0x0, len = 0}, ttl = {s = 0x0, len = 0}, user_param = {
s = 0xffffffff7fffe230 "", len = 0}, maddr = {s = 0x100420d30 "ÿÿÿÿ~Äs|ÿÿÿÿ~Äs|ÿÿÿÿ~Äs\200", len = 0}, method = {s = 0xffffffff78706ba8 "if",
len = -1}, lr = {s = 0x100033330 "@", len = -1}, r2 = {s = 0xffffffff7fffe26e "ÿÿÿÿÿÿ~Äs|", len = -1}, gr = {
s = 0xffffffff7fffe289 "ÿÿÿ~Äs|", len = -1}, transport_val = {s = 0x7fffffff <Address 0x7fffffff out of bounds>, len = -1}, ttl_val = {
s = 0x1 <Address 0x1 out of bounds>, len = -1}, user_param_val = {s = 0x4 <Address 0x4 out of bounds>, len = -1}, maddr_val = {
s = 0x2 <Address 0x2 out of bounds>, len = 0}, method_val = {s = 0xffffffff7be96d80 "", len = -1}, lr_val = {s = 0x1004a05d0 "", len = 1},
r2_val = {s = 0xffffffff7fffe450 "ÿÿÿÿ~Äs}ÿÿÿÿ\177ÿå°", len = 0}, gr_val = {s = 0x100000 <Address 0x100000 out of bounds>, len = -1}}
next_hop = {user = {s = 0x10002df90 "@", len = -1}, passwd = {s = 0x1004665a8 "", len = 1}, host = {s = 0x0, len = 0}, port = {s = 0x0, len = 0},
params = {s = 0x100000000 "\177ELF\002\002\001", len = 0}, sip_params = {s = 0xffffffff7fffd4d1 "", len = 1}, headers = {
s = 0xffffffff7fffd5c1 "", len = 1}, port_no = 0, proto = 0, type = ERROR_URI_T, flags = 0, transport = {s = 0x0, len = -1}, ttl = {
s = 0xffffffff7fffe020 "", len = 0}, user_param = {s = 0x0, len = 0}, maddr = {s = 0x1 <Address 0x1 out of bounds>, len = -1}, method = {
s = 0x100000 <Address 0x100000 out of bounds>, len = 0}, lr = {s = 0xffffffff7ec48084 "", len = 0}, r2 = {
s = 0x2400 <Address 0x2400 out of bounds>, len = 0}, gr = {s = 0xffffffff78706dc8 "%2d(%d) %s: %s c=[%s] l=%d a=%d n=%.*s\n", len = 0},
transport_val = {s = 0x18f3d0 <Address 0x18f3d0 out of bounds>, len = -1}, ttl_val = {
s = 0x37ffffff7ec3c000 <Address 0x37ffffff7ec3c000 out of bounds>, len = -1}, user_param_val = {
s = 0xffffffff78704230 "@\004\016\224âs¨¿\020oþ\\ÂF\200", len = 0}, maddr_val = {s = 0x0, len = 0}, method_val = {s = 0x0, len = 0},
lr_val = {s = 0x0, len = 1}, r2_val = {s = 0x1a <Address 0x1a out of bounds>, len = -1}, gr_val = {s = 0x4d4 <Address 0x4d4 out of bounds>,
len = 0}}
u = <value optimized out>
port = <value optimized out>
dst_host = <value optimized out>
i = <value optimized out>
flags = <value optimized out>
avp = <value optimized out>
st = {flags = 0, id = 0, name = {n = 0, s = {s = 0x5748 <Address 0x5748 out of bounds>, len = 1}, re = 0x5748}, avp = 0xffffffff787075d0}
sct = <value optimized out>
sjt = <value optimized out>
rve = <value optimized out>
mct = <value optimized out>
rv = <value optimized out>
rv1 = <value optimized out>
c1 = {cache_type = 4294967295, val_type = 2126803836, c = {avp_val = {n = 0, s = {s = 0x2 <Address 0x2 out of bounds>, len = -1}, re = 0x2},
pval = {rs = {s = 0x2 <Address 0x2 out of bounds>, len = -1}, ri = -1, flags = 2021690136}},
i2s = "ÿÿÿÿx\200\201\230\000\000\000\001\000\067'@ÿÿÿÿx\200"}
s = {s = 0x1002200f0 "/opt/kamailio-3.2/etc/kamailio/kamailio.cfg", len = 0}
srevp = {0x1004a11f0, 0x10047c698}
---Type <return> to continue, or q <return> to quit---
mod_f_params = {{type = NOSUBTYPE, u = {number = 0, string = 0x0, str = {s = 0x0, len = 0}, data = 0x0, attr = 0x0, select = 0x0}}, {
type = NOSUBTYPE, u = {number = 0, string = 0x0, str = {s = 0x0, len = 0}, data = 0x0, attr = 0x0, select = 0x0}}, {type = NOSUBTYPE, u = {
number = 0, string = 0x0, str = {s = 0x0, len = 0}, data = 0x0, attr = 0x0, select = 0x0}}, {type = NOSUBTYPE, u = {number = 0,
string = 0x0, str = {s = 0x0, len = 0}, data = 0x0, attr = 0x0, select = 0x0}}, {type = NOSUBTYPE, u = {number = 0, string = 0x0, str = {
s = 0x0, len = 0}, data = 0x0, attr = 0x0, select = 0x0}}, {type = NOSUBTYPE, u = {number = 0, string = 0x0, str = {s = 0x0, len = 0},
data = 0x0, attr = 0x0, select = 0x0}}, {type = NOSUBTYPE, u = {number = 0, string = 0x0, str = {s = 0x0, len = 0}, data = 0x0, attr = 0x0,
select = 0x0}}, {type = NOSUBTYPE, u = {number = 0, string = 0x0, str = {s = 0x0, len = 0}, data = 0x0, attr = 0x0, select = 0x0}}}
#2 0x000000010002df98 in run_actions (h=0xffffffff7fffe220, a=0x1004a11f0, msg=0x10047c698) at action.c:1644
t = <value optimized out>
ret = <value optimized out>
mod = <value optimized out>
ms = 0
#3 0x00000001000381d0 in run_actions_safe (h=0xffffffff7ffff320, a=0x1004a11f0, msg=0x10047c698) at action.c:1708
ctx = {rec_lev = 1, run_flags = 0, last_retcode = 0, jmp_env = {2147475041, -2147493759, 4295157136, -2147493519, 4295197128, 4303994646,
4297161816, -1, -2168163460, 1, 96, -2168163460}}
ret = 2147476000
ign_on_break = 0
#4 0x00000001000f15e8 in rval_get_int (h=0xffffffff7ffff320, msg=0x10047c698, i=0xffffffff7fffe740, rv=0x1004a1768, cache=0x0) at rvalue.c:920
r_avp = <value optimized out>
avp_val = {n = 0, s = {s = 0x0, len = -1}, re = 0x0}
pval = {rs = {s = 0x0, len = 0}, ri = 0, flags = 2147482624}
tmp = {s = 0x2520 <Address 0x2520 out of bounds>, len = 0}
s = 0x0
r = <value optimized out>
ret = 0
destroy_pval = 0
#5 0x00000001000f6d3c in rval_expr_eval_int (h=0xffffffff7ffff320, msg=0x10047c698, res=0xffffffff7fffe740, rve=0x1004a1760) at rvalue.c:1914
i1 = <value optimized out>
i2 = <value optimized out>
ret = -1
c1 = {cache_type = RV_CACHE_EMPTY, val_type = RV_NONE, c = {avp_val = {n = 0, s = {s = 0x7fffffff <Address 0x7fffffff out of bounds>, len = 0},
re = 0x7fffffff}, pval = {rs = {s = 0x7fffffff <Address 0x7fffffff out of bounds>, len = 0}, ri = 0, flags = 0}},
i2s = "ÿÿÿÿ~Ä\200\204\000\000\000\000\000\000% \000\000\000\000\000"}
c2 = {cache_type = RV_CACHE_PVAR, val_type = 4328752, c = {avp_val = {n = -1, s = {
s = 0xffffffff78706dc8 "%2d(%d) %s: %s c=[%s] l=%d a=%d n=%.*s\n", len = 0}, re = 0xffffffff78706dc8}, pval = {rs = {
s = 0xffffffff78706dc8 "%2d(%d) %s: %s c=[%s] l=%d a=%d n=%.*s\n", len = 0}, ri = 0, flags = 1635280}},
i2s = "\000\000\000\000\000\000\001hÿÿÿÿ~ÃÀ\000ÿÿÿÿ\177ÿ"}
rv1 = <value optimized out>
rv2 = <value optimized out>
#6 0x00000001000f6aac in rval_expr_eval_int (h=0xffffffff7ffff320, msg=0x10047c698, res=0xffffffff7fffebe0, rve=0x1004a1e30) at rvalue.c:1922
i1 = <value optimized out>
i2 = <value optimized out>
ret = -1
c1 = {cache_type = RV_CACHE_EMPTY, val_type = RV_NONE, c = {avp_val = {n = 1, s = {
s = 0x100217c58 "%salert - action [%s (%d)] cfg [%s:%d] took too long [%u ms]\n", len = 0}, re = 0x100217c58}, pval = {rs = {
s = 0x100217c58 "%salert - action [%s (%d)] cfg [%s:%d] took too long [%u ms]\n", len = 0}, ri = 0, flags = 2147483647}},
i2s = "\000\000\000\000\177ÿü\000\000\000\000\000\000\000\000\000ÿÿÿÿ~Ä"}
c2 = {cache_type = RV_CACHE_EMPTY, val_type = 9504, c = {avp_val = {n = 0, s = {s = 0x2400 <Address 0x2400 out of bounds>, len = -1},
re = 0x2400}, pval = {rs = {s = 0x2400 <Address 0x2400 out of bounds>, len = -1}, ri = 0, flags = 7}},
i2s = "\000\000\000\000\177ÿÿÿ\000\000\000\000\177ÿü\000\000\000\000\000\000"}
rv1 = <value optimized out>
rv2 = <value optimized out>
#7 0x000000010002fce0 in do_action (h=0xffffffff7ffff320, a=0x1004a1460, msg=0x10047c698) at action.c:1121
ret = -5
v = <value optimized out>
dst = {send_sock = 0x1002200f0, to = {s = {sa_family = 0, sa_data = "\000\000\000\000\002Ø\000\000\000\000\000\000\000\006"}, sin = {
sin_family = 0, sin_port = 0, sin_addr = {S_un = {S_un_b = {s_b1 = 0 '\000', s_b2 = 0 '\000', s_b3 = 2 '\002', s_b4 = 216 'Ø'}, S_un_w = {
s_w1 = 0, s_w2 = 728}, S_addr = 728}}, sin_zero = "\000\000\000\000\000\000\000\006"}, sin6 = {sin6_family = 0, sin6_port = 0,
sin6_flowinfo = 728, sin6_addr = {_S6_un = {_S6_u8 = "\000\000\000\000\000\000\000\006\000\000\000\000\000\000\000\005", _S6_u32 = {0, 6,
0, 5}, __S6_align = 0}}, sin6_scope_id = 4294967295, __sin6_src_id = 2020633376}}, id = -1, proto = 123 '{', send_flags = {
f = 213 'Õ', blst_imask = 11 '\v'}}
tmp = <value optimized out>
new_uri = <value optimized out>
end = <value optimized out>
crt = <value optimized out>
cmd = <value optimized out>
len = <value optimized out>
user = <value optimized out>
---Type <return> to continue, or q <return> to quit---
uri = {user = {s = 0x4216a1 <Address 0x4216a1 out of bounds>, len = 0}, passwd = {s = 0x0, len = 0}, host = {s = 0x0, len = 1}, port = {
s = 0x100451590 "", len = -1}, params = {s = 0x1000381c8 "\177ÿ×NÆ'§\223Â\a§\223±: ", len = -1}, sip_params = {s = 0xffffffff7ec3c000 "",
len = -1}, headers = {s = 0xffffffff7bd65a34 "@\004×{ØX`\200\020oÿ®\001", len = -1}, port_no = 0, proto = 1, type = 1010996, flags = 0,
transport = {s = 0x0, len = 0}, ttl = {s = 0x0, len = 0}, user_param = {s = 0x100420c30 "", len = 0}, maddr = {s = 0x0, len = 0}, method = {
s = 0x0, len = 0}, lr = {s = 0x7ffffc00 <Address 0x7ffffc00 out of bounds>, len = 0}, r2 = {s = 0x0, len = 0}, gr = {s = 0x0, len = 1},
transport_val = {s = 0x0, len = 0}, ttl_val = {s = 0x1008817a8 '\001' <repeats 200 times>..., len = 1}, user_param_val = {
s = 0x1004216a1 " (((((", ' ' <repeats 18 times>, "H", '\020' <repeats 15 times>, "\204\204\204\204\204\204\204\204\204\204\020\020\020\020\020\020\020\201\201\201\201\201\201", '\001' <repeats 20 times>, "\020\020\020\020\020\020\202\202\202\202\202\202", '\002' <repeats 20 times>, "\020\020\020\020 ", len = 1}, maddr_val = {s = 0x30 <Address 0x30 out of bounds>, len = 0}, method_val = {s = 0x1004773c7 "keeling", len = 0}, lr_val = {
s = 0x0, len = -1}, r2_val = {s = 0xffffffff7bd67614 "@\004Ð\203ØX`\200\020oýÈ\001", len = -1}, gr_val = {s = 0x0, len = 1}}
next_hop = {user = {s = 0x7fffdff1 <Address 0x7fffdff1 out of bounds>, len = 0}, passwd = {s = 0x0, len = 0}, host = {s = 0x0, len = 0}, port = {
s = 0x0, len = -1}, params = {s = 0xffffffff7fffeb40 "", len = 0}, sip_params = {s = 0x0, len = -1}, headers = {
s = 0x7 <Address 0x7 out of bounds>, len = 0}, port_no = 0, proto = 0, type = ERROR_URI_T, flags = 0, transport = {s = 0xffffffff7ec48084 "",
len = 0}, ttl = {s = 0x2400 <Address 0x2400 out of bounds>, len = 1}, user_param = {
s = 0xffffffff78706dc8 "%2d(%d) %s: %s c=[%s] l=%d a=%d n=%.*s\n", len = 0}, maddr = {s = 0x18f3d0 <Address 0x18f3d0 out of bounds>,
len = 0}, method = {s = 0xffffffff7ec3c000 "", len = -1}, lr = {s = 0xffffffff78704230 "@\004\016\224âs¨¿\020oþ\\ÂF\200", len = 0}, r2 = {
s = 0x0, len = 0}, gr = {s = 0x0, len = 0}, transport_val = {s = 0x0, len = 1}, ttl_val = {s = 0x6 <Address 0x6 out of bounds>, len = 0},
user_param_val = {s = 0x2d8 <Address 0x2d8 out of bounds>, len = 0}, maddr_val = {s = 0x7 <Address 0x7 out of bounds>, len = 0}, method_val = {
s = 0xffffffff788076d0 "", len = -1}, lr_val = {s = 0xffffffff78808198 "ÿÿÿÿ", len = 1}, r2_val = {s = 0xffffffff78808b38 "ÿÿÿÿvfãøÿÿÿÿvfi¸",
len = 1}, gr_val = {s = 0x10041ca80 "", len = -1}}
u = <value optimized out>
port = <value optimized out>
dst_host = <value optimized out>
i = <value optimized out>
flags = <value optimized out>
avp = <value optimized out>
st = {flags = 0, id = 0, name = {n = 0, s = {s = 0x0, len = 0}, re = 0x0}, avp = 0x5748}
sct = <value optimized out>
sjt = <value optimized out>
rve = 0x1004a1e30
mct = <value optimized out>
rv = <value optimized out>
rv1 = <value optimized out>
c1 = {cache_type = RV_CACHE_PVAR, val_type = 238292, c = {avp_val = {n = 0, s = {s = 0x0, len = -1}, re = 0x0}, pval = {rs = {s = 0x0, len = -1},
ri = 0, flags = 10}}, i2s = "\000\000\000\000\000\000WH\000\000\000\001\000$Ó\230ÿÿÿÿxp"}
s = {s = 0x100452b20 "", len = 0}
srevp = {0x1004a1460, 0x10047c698}
mod_f_params = {{type = NOSUBTYPE, u = {number = 0, string = 0x0, str = {s = 0x0, len = 0}, data = 0x0, attr = 0x0, select = 0x0}}, {
type = NOSUBTYPE, u = {number = 0, string = 0x0, str = {s = 0x0, len = 0}, data = 0x0, attr = 0x0, select = 0x0}}, {type = NOSUBTYPE, u = {
number = 0, string = 0x0, str = {s = 0x0, len = 0}, data = 0x0, attr = 0x0, select = 0x0}}, {type = NOSUBTYPE, u = {number = 0,
string = 0x0, str = {s = 0x0, len = 0}, data = 0x0, attr = 0x0, select = 0x0}}, {type = NOSUBTYPE, u = {number = 0, string = 0x0, str = {
s = 0x0, len = 0}, data = 0x0, attr = 0x0, select = 0x0}}, {type = NOSUBTYPE, u = {number = 0, string = 0x0, str = {s = 0x0, len = 0},
data = 0x0, attr = 0x0, select = 0x0}}, {type = NOSUBTYPE, u = {number = 0, string = 0x0, str = {s = 0x0, len = 0}, data = 0x0, attr = 0x0,
select = 0x0}}, {type = NOSUBTYPE, u = {number = 0, string = 0x0, str = {s = 0x0, len = 0}, data = 0x0, attr = 0x0, select = 0x0}}}
#8 0x000000010002df98 in run_actions (h=0xffffffff7ffff320, a=0x1004a0450, msg=0x10047c698) at action.c:1644
t = <value optimized out>
ret = <value optimized out>
mod = <value optimized out>
ms = 0
#9 0x000000010002f830 in do_action (h=0xffffffff7ffff320, a=0x1004558a8, msg=0x10047c698) at action.c:761
ret = -5
v = <value optimized out>
dst = {send_sock = 0x0, to = {s = {sa_family = 0, sa_data = "\000\001\000%\220\000\000\000\000\000\000\000\000\n"}, sin = {sin_family = 0,
sin_port = 1, sin_addr = {S_un = {S_un_b = {s_b1 = 0 '\000', s_b2 = 37 '%', s_b3 = 144 '\220', s_b4 = 0 '\000'}, S_un_w = {s_w1 = 37,
s_w2 = 36864}, S_addr = 2461696}}, sin_zero = "\000\000\000\000\000\000\000\n"}, sin6 = {sin6_family = 0, sin6_port = 1,
sin6_flowinfo = 2461696, sin6_addr = {_S6_un = {_S6_u8 = "\000\000\000\000\000\000\000\n\000\000\000\000\000\000\000", _S6_u32 = {0, 10, 0,
0}, __S6_align = 0}}, sin6_scope_id = 0, __sin6_src_id = 1048576}}, id = 0, proto = 0 '\000', send_flags = {f = 16 '\020',
blst_imask = 3 '\003'}}
tmp = <value optimized out>
new_uri = <value optimized out>
end = <value optimized out>
crt = <value optimized out>
cmd = <value optimized out>
len = <value optimized out>
user = <value optimized out>
uri = {user = {s = 0x3400000000000000 <Address 0x3400000000000000 out of bounds>, len = 0}, passwd = {s = 0x0, len = 0}, host = {s = 0x0,
len = 0}, port = {s = 0x0, len = 1}, params = {s = 0x0, len = 0}, sip_params = {s = 0x0, len = 0}, headers = {s = 0x0, len = 0}, port_no = 0,
proto = 0, type = ERROR_URI_T, flags = 0, transport = {s = 0x0, len = 0}, ttl = {s = 0x0, len = 0}, user_param = {s = 0x0, len = 0}, maddr = {
---Type <return> to continue, or q <return> to quit---
s = 0x0, len = 0}, method = {s = 0x0, len = 1}, lr = {
s = 0x10089c133 " 1000\r\nTH: dih\r\n\r\nv=0\r\no=nkeeling3 0 0 IN IP4 192.168.1.187\r\ns=-\r\nc=IN IP4 192.168.1.187\r\nt=0 0\r\nm=audio 5008 RTP/AVP 9 96 97 98 100 0 8 102 3 103 5 6 101\r\na=rtpmap:9 G722/8000\r\na=rtpmap:96 SILK/24000"..., len = 0}, r2 = {s = 0x0, len = 0}, gr = {s = 0x0,
len = 0}, transport_val = {s = 0x0, len = 0}, ttl_val = {s = 0x0, len = 0}, user_param_val = {s = 0x0, len = 0}, maddr_val = {s = 0x0,
len = 0}, method_val = {s = 0x0, len = 1}, lr_val = {s = 0x6cd00000000 <Address 0x6cd00000000 out of bounds>, len = 0}, r2_val = {s = 0x0,
len = 0}, gr_val = {s = 0x0, len = 0}}
next_hop = {user = {s = 0x0, len = 0}, passwd = {s = 0x0, len = 0}, host = {s = 0x0, len = 0}, port = {s = 0x0, len = 0}, params = {s = 0x0,
len = 0}, sip_params = {s = 0x0, len = 0}, headers = {s = 0x0, len = 0}, port_no = 0, proto = 0, type = ERROR_URI_T, flags = 0, transport = {
s = 0x0, len = 0}, ttl = {s = 0x0, len = 0}, user_param = {s = 0x0, len = 0}, maddr = {s = 0x0, len = 0}, method = {s = 0x0, len = 0}, lr = {
s = 0x0, len = -1}, r2 = {s = 0xffffffff7ffff170 "", len = 0}, gr = {s = 0x0, len = 0}, transport_val = {
s = 0xfffffffffffffffe <Address 0xfffffffffffffffe out of bounds>, len = 0}, ttl_val = {s = 0x7ffffc00 <Address 0x7ffffc00 out of bounds>,
len = 0}, user_param_val = {s = 0xffffffff7ec48084 "", len = 0}, maddr_val = {s = 0x2400 <Address 0x2400 out of bounds>, len = 1},
method_val = {s = 0x100259768 "%2d(%d) %s: %send of header reached, state=%d\n", len = 0}, lr_val = {
s = 0x18f3d0 <Address 0x18f3d0 out of bounds>, len = -1}, r2_val = {s = 0xffffffff7ec3c000 "", len = -1}, gr_val = {
s = 0x10018adbc "@\a}i\232\024ç\230\020oï\225\202\024`\034\003", len = 1}}
u = <value optimized out>
port = <value optimized out>
dst_host = <value optimized out>
i = 12
flags = <value optimized out>
avp = <value optimized out>
st = {flags = 1, id = 137, name = {n = 1, s = {s = 0x10089c52d "", len = 1}, re = 0x10089c52d}, avp = 0x5}
sct = <value optimized out>
sjt = <value optimized out>
rve = <value optimized out>
mct = <value optimized out>
rv = 0x100420d30
rv1 = <value optimized out>
c1 = {cache_type = 4294967295, val_type = 2126757888, c = {avp_val = {n = -1, s = {s = 0xffffffff7fffe901 "", len = 1}, re = 0xffffffff7fffe901},
pval = {rs = {s = 0xffffffff7fffe901 "", len = 1}, ri = 0, flags = 0}}, i2s = '\000' <repeats 15 times>, "\005\000\000\000\000\000\020"}
s = {s = 0x1004a4cb0 "", len = 1}
srevp = {0x1004558a8, 0x10047c698}
mod_f_params = {{type = NOSUBTYPE, u = {number = 0, string = 0x0, str = {s = 0x0, len = 0}, data = 0x0, attr = 0x0, select = 0x0}}, {
type = NOSUBTYPE, u = {number = 0, string = 0x0, str = {s = 0x0, len = 0}, data = 0x0, attr = 0x0, select = 0x0}}, {type = NOSUBTYPE, u = {
number = 0, string = 0x0, str = {s = 0x0, len = 0}, data = 0x0, attr = 0x0, select = 0x0}}, {type = NOSUBTYPE, u = {number = 0,
string = 0x0, str = {s = 0x0, len = 0}, data = 0x0, attr = 0x0, select = 0x0}}, {type = NOSUBTYPE, u = {number = 0, string = 0x0, str = {
s = 0x0, len = 0}, data = 0x0, attr = 0x0, select = 0x0}}, {type = NOSUBTYPE, u = {number = 0, string = 0x0, str = {s = 0x0, len = 0},
data = 0x0, attr = 0x0, select = 0x0}}, {type = NOSUBTYPE, u = {number = 0, string = 0x0, str = {s = 0x0, len = 0}, data = 0x0, attr = 0x0,
select = 0x0}}, {type = NOSUBTYPE, u = {number = 0, string = 0x0, str = {s = 0x0, len = 0}, data = 0x0, attr = 0x0, select = 0x0}}}
#10 0x000000010002df98 in run_actions (h=0xffffffff7ffff320, a=0x100447ee0, msg=0x10047c698) at action.c:1644
t = <value optimized out>
ret = <value optimized out>
mod = <value optimized out>
ms = 0
#11 0x000000010003823c in run_top_route (a=0x100447ee0, msg=0x10047c698, c=0x0) at action.c:1729
ctx = {rec_lev = 2, run_flags = 0, last_retcode = 1, jmp_env = {0, -2147489407, 4295157136, -2147489167, 4295197236, 4295153624, 10, 22344,
4297380792, 4297411808, 2, 4303994482}}
p = 0xffffffff7ffff320
ret = 4488928
sfbk = 0
#12 0x000000010002d1a8 in receive_msg (buf=<value optimized out>, len=<value optimized out>, rcv_info=<value optimized out>) at receive.c:209
msg = 0x10047c698
ctx = {rec_lev = 0, run_flags = 9504, last_retcode = 0, jmp_env = {4299296048, 4297358768, 0, 1635280, 1049635, -2168209408, -2147488575,
4296168208, 1049600, 104, -2147488543, 4296149136}}
ret = <value optimized out>
inb = {
s = 0x10089be50 "INVITE sip:nkeeling at akanvoice.com SIP/2.0\r\nCall-ID: 72938d6e30f27be02ebdffd063aba05e at 0:0:0:0:0:0:0:0\r\nCSeq: 2 INVITE\r\nFrom: \"Nathaniel L Keeling III\" <sip:nkeeling3 at akanvoice.com>;tag=376e7ebf\r\nTo: <s"..., len = 1757}
#13 0x0000000100125278 in receive_tcp_msg (con=0xffffffff76672e28, bytes_read=0xffffffff7ffff700, read_flags=0xffffffff7ffff710) at tcp_read.c:1044
buf = 0x10089be50 "INVITE sip:nkeeling at akanvoice.com SIP/2.0\r\nCall-ID: 72938d6e30f27be02ebdffd063aba05e at 0:0:0:0:0:0:0:0\r\nCSeq: 2 INVITE\r\nFrom: \"Nathaniel L Keeling III\" <sip:nkeeling3 at akanvoice.com>;tag=376e7ebf\r\nTo: <s"...
bsize = 65535
#14 tcp_read_req (con=0xffffffff76672e28, bytes_read=0xffffffff7ffff700, read_flags=0xffffffff7ffff710) at tcp_read.c:1231
bytes = <value optimized out>
total_bytes = 1741
resp = 1
size = <value optimized out>
req = 0xffffffff76672eb0
---Type <return> to continue, or q <return> to quit---
dst = {send_sock = 0x1, to = {s = {sa_family = 65535, sa_data = "ÿÿ\177ÿõØ\000\000\000\004\000\000\000\b"}, sin = {sin_family = 65535,
sin_port = 65535, sin_addr = {S_un = {S_un_b = {s_b1 = 127 '\177', s_b2 = 255 'ÿ', s_b3 = 245 'õ', s_b4 = 216 'Ø'}, S_un_w = {s_w1 = 32767,
s_w2 = 62936}, S_addr = 2147481048}}, sin_zero = "\000\000\000\004\000\000\000\b"}, sin6 = {sin6_family = 65535, sin6_port = 65535,
sin6_flowinfo = 2147481048, sin6_addr = {_S6_un = {_S6_u8 = "\000\000\000\004\000\000\000\bÿÿÿÿ\177ÿöø", _S6_u32 = {4, 8, 4294967295,
2147481336}, __S6_align = 4}}, sin6_scope_id = 0, __sin6_src_id = 8}}, id = 12, proto = 0 '\000', send_flags = {f = 1 '\001',
blst_imask = 0 '\000'}}
c = 0 '\000'
ret = <value optimized out>
#15 0x000000010012613c in handle_io (fm=<value optimized out>, events=<value optimized out>, idx=0) at tcp_read.c:1461
ret = <value optimized out>
n = <value optimized out>
read_flags = 1
con = 0xffffffff76672e28
s = <value optimized out>
resp = <value optimized out>
t = <value optimized out>
#16 0x000000010012841c in io_wait_loop_devpoll (unix_sock=<value optimized out>) at io_wait.h:1405
dpoll = {dp_fds = 0x1004bab80, dp_nfds = 2, dp_timeout = 2000}
ret = 1
n = 1
r = <value optimized out>
fm = <value optimized out>
#17 tcp_receive_loop (unix_sock=<value optimized out>) at tcp_read.c:1594
No locals.
#18 0x00000001000bbe18 in tcp_init_children () at tcp_main.c:4952
r = <value optimized out>
i = <value optimized out>
reader_fd_1 = 23
pid = <value optimized out>
si_desc = "tcp receiver (generic)\000x\000\000\000\000\000\000WD\000\000\000\001\000AÀ\000ÿÿÿÿ\177ÿñ\201\000\000\000\001\000\006M\200\000\000\000\001\000\067hè\000\000\000\001\000CÈp", '\000' <repeats 14 times>, "W>\000\000\000\001\000$Ó¸\000\000\000\001\000!Ú¨\000\000\000\000\000\000\000\000ÿÿÿÿxpiX\000\000\000\000\000\000\000"
si = <value optimized out>
#19 0x0000000100064db0 in main_loop () at main.c:1718
i = <value optimized out>
pid = <value optimized out>
si = <value optimized out>
si_desc = "udp receiver child=3 sock=209.252.110.38:5060\000óÐ\000\000\000\001\000B9@\000\000\000\000\000\000\000\002ÿÿÿÿ\177ÿòá\000\000\000\001\000\037z0\000\000\000\001\000$Ó°\000\000\000\001\000#7Hÿÿÿÿÿÿÿýÿÿÿÿÿÿÿýÿÿÿÿÿÿÿýÿÿÿÿÿÿÿý"
nrprocs = <value optimized out>
#20 0x00000001001f7b08 in main (argc=<value optimized out>, argv=<value optimized out>) at main.c:2546
cfg_stream = <value optimized out>
c = <value optimized out>
r = 1048576
tmp = 0x0
tmp_len = 0
options = 0x100221e60 ":f:cm:M:dVIhEb:l:L:n:vrRDTN:W:w:t:u:g:P:G:SQ:O:a:A:"
seed = 2639538087
rfd = <value optimized out>
debug_save = <value optimized out>
debug_flag = <value optimized out>
dont_fork_cnt = <value optimized out>
n_lst = 0x100000
p = <value optimized out>
(gdb) l t_funcs.c:352
347 look-ups -- let upstream know we're working on it */
348 if (p_msg->REQ_METHOD==METHOD_INVITE && (t->flags&T_AUTO_INV_100)
349 && (t->uas.status < 100)
350 ) {
351 DBG( "SER: new INVITE\n");
352 if (!t_reply( t, p_msg , 100 ,
353 cfg_get(tm, tm_cfg, tm_auto_inv_100_r)))
354 DBG("SER: ERROR: t_reply (100)\n");
355 }
356
(gdb)
More information about the sr-users
mailing list