Hi,
Since I am getting errors in from the usrloc module, I am trying another way to parse out the information I need using pv.so. I'm encountering similar segfaults issues. Here are snippets of my configs:
modparam("sipcapture", "db_url", "mysql://xxx:xxx@localhost/test_db") modparam("sipcapture", "capture_on", 1) modparam("sipcapture", "table_name", "sip_capture") modparam("sipcapture", "raw_socket_listen", "127.0.0.1:5060-9000") modparam("sipcapture", "raw_interface", "eth2") modparam("sipcapture", "raw_sock_children", 4) modparam("sipcapture", "raw_moni_capture_on", 1) modparam("sipcapture", "promiscious_on", 1)
route { if (method == "REGISTER") { if (avp_check("$si","eq/10.xxx.xxx.xxx")) { #save("location", "0x04"); # This currently results in segfault and is being addressed by Alexandr sip_capture(); xlog("The received IP is $Ri\n"); # Just to test if I am able to parse the received IP from the Via headers correctly drop; } drop; } }
Feb 17 13:41:02 ubuntu kernel: [251382.760104] kamailio[9414]: segfault at 31 ip 00007fb4ef077611 sp 00007fff0c8a6468 error 4 in pv.so[7fb4ef06a000+39000]
Core was generated by `kamailio -w /home/core'. Program terminated with signal 11, Segmentation fault. #0 pv_get_rcvip (msg=0x7fb4efdd7598, param=0x7fb4efdcef88, res=0x7fff0c8a64b0) at pv_core.c:647 647 || msg->rcv.bind_address->address_str.s==NULL)
(gdb) bt #0 pv_get_rcvip (msg=0x7fb4efdd7598, param=0x7fb4efdcef88, res=0x7fff0c8a64b0) at pv_core.c:647 #1 0x000000000049b5ad in pv_get_spec_value (msg=0x7fb4efdd7598, sp=0x7fb4efdcef70, value=0x7fff0c8a64b0) at pvapi.c:1180 #2 0x000000000049b71d in pv_printf (msg=0x7fb4efdd7598, list=<optimized out>, buf=<optimized out>, len=0x7fff0c8a6558) at pvapi.c:1239 #3 0x00007fb4ed0d442e in xlog_helper (msg=<optimized out>, xm=0x7fb4efdceef0, level=-1, line=0) at xlog.c:168 #4 0x000000000041babb in do_action (h=0x7fff0c8a73b0, a=0x7fb4efdd02a0, msg=0x7fb4efdd7598) at action.c:1122 #5 0x000000000041abe2 in run_actions (h=0x7fff0c8a73b0, a=0x7fb4efdd0080, msg=0x7fb4efdd7598) at action.c:1610 #6 0x000000000041c05b in do_action (h=0x7fff0c8a73b0, a=0x7fb4efdd10d0, msg=0x7fb4efdd7598) at action.c:1107 #7 0x000000000041abe2 in run_actions (h=0x7fff0c8a73b0, a=0x7fb4efdd10d0, msg=0x7fb4efdd7598) at action.c:1610 #8 0x000000000041c05b in do_action (h=0x7fff0c8a73b0, a=0x7fb4efdd1350, msg=0x7fb4efdd7598) at action.c:1107 #9 0x000000000041abe2 in run_actions (h=0x7fff0c8a73b0, a=0x7fb4efdd1350, msg=0x7fb4efdd7598) at action.c:1610 #10 0x0000000000422fa2 in run_top_route (a=0x7fb4efdd1350, msg=0x7fb4efdd7598, c=<optimized out>) at action.c:1683 #11 0x00000000004b061e in receive_msg (buf=<optimized out>, len=<optimized out>, rcv_info=<optimized out>) at receive.c:207 #12 0x00007fb4edb538b0 in raw_capture_rcv_loop (rsock=5, port1=5060, port2=8933, ipip=0) at sipcapture.c:1518 #13 0x00007fb4edb53e1f in init_rawsock_children () at sipcapture.c:572 #14 0x00007fb4edb54033 in child_init (rank=<optimized out>) at sipcapture.c:542 #15 0x0000000000507a0f in init_mod_child (m=0x7fb4efdcb2b0, rank=0) at sr_module.c:886 #16 0x0000000000507974 in init_mod_child (m=0x7fb4efdcb668, rank=0) at sr_module.c:883 #17 0x0000000000507974 in init_mod_child (m=0x7fb4efdcc178, rank=0) at sr_module.c:883 #18 0x0000000000507974 in init_mod_child (m=0x7fb4efdcc4b0, rank=0) at sr_module.c:883 #19 0x0000000000507974 in init_mod_child (m=0x7fb4efdccaf0, rank=0) at sr_module.c:883 #20 0x0000000000507974 in init_mod_child (m=0x7fb4efdcd030, rank=0) at sr_module.c:883 #21 0x0000000000476149 in main_loop () at main.c:1661 #22 0x000000000041a940 in main (argc=<optimized out>, argv=0x7fff0c8a7be8) at main.c:2475
(gdb) p *msg $1 = {id = 82, pid = 9418, fwd_send_flags = {f = 0 '\000', blst_imask = 0 '\000'}, rpl_send_flags = {f = 0 '\000', blst_imask = 0 '\000'}, first_line = { type = 1, len = 43, u = {request = {method = { s = 0x7fb4edd57d2a "REGISTER sip:abc.def.com SIP/2.0\r\nFrom: "9995551234" sip:9995551234@abc.def.com;rp=SandboxTestingRegistrations;tag=F9EEDA6C-E203EB89\r\nTo: sip:9995551234@abc.def.com\r\nCal"..., len = 8}, uri = { s = 0x7fb4edd57d33 "sip:abc.def.com SIP/2.0\r\nFrom: "9995551234" sip:9995551234@abc.def.com;rp=SandboxTestingRegistrations;tag=F9EEDA6C-E203EB89\r\nTo: sip:9995551234@abc.def.com\r\nCall-ID: 225"..., len = 24}, version = { s = 0x7fb4edd57d4c "SIP/2.0\r\nFrom: "9995551234" sip:9995551234@abc.def.com;rp=SandboxTestingRegistrations;tag=F9EEDA6C-E203EB89\r\nTo: sip:9995551234@abc.def.com\r\nCall-ID: 2257e150-b49dfd8d-c8d924b2@1"..., len = 7}, method_value = 32}, reply = {version = { s = 0x7fb4edd57d2a "REGISTER sip:abc.def.com SIP/2.0\r\nFrom: "9995551234" sip:9995551234@abc.def.com;rp=SandboxTestingRegistrations;tag=F9EEDA6C-E203EB89\r\nTo: sip:9995551234@abc.def.com\r\nCal"..., len = 8}, status = { s = 0x7fb4edd57d33 "sip:abc.def.com SIP/2.0\r\nFrom: "9995551234" sip:9995551234@abc.def.com;rp=SandboxTestingRegistrations;tag=F9EEDA6C-E203EB89\r\nTo: sip:9995551234@abc.def.com\r\nCall-ID: 225"..., len = 24}, reason = { s = 0x7fb4edd57d4c "SIP/2.0\r\nFrom: "9995551234" sip:9995551234@abc.def.com;rp=SandboxTestingRegistrations;tag=F9EEDA6C-E203EB89\r\nTo: sip:9995551234@abc.def.com\r\nCall-ID: 2257e150-b49dfd8d-c8d924b2@1"..., len = 7}, statuscode = 32}}}, via1 = 0x7fb4efdd7ef0, via2 = 0x7fb4efdd8218, headers = 0x7fb4efdd7e50, last_header = 0x7fb4efdd87c0, parsed_flag = 18446744073709551615, h_via1 = 0x7fb4efdd80d8, h_via2 = 0x7fb4efdd8178, callid = 0x7fb4efdd19b0, to = 0x7fb4efdd1910, cseq = 0x7fb4efdd7c80, from = 0x7fb4efdd7e50, contact = 0x7fb4efdd84a0, maxforwards = 0x7fb4efdd8680, route = 0x0, record_route = 0x0, content_type = 0x0, content_length = 0x7fb4efdd87c0, authorization = 0x0, expires = 0x7fb4efdd8720, proxy_auth = 0x0, supported = 0x0, require = 0x0, proxy_require = 0x0, unsupported = 0x0, allow = 0x0, event = 0x0, accept = 0x0, accept_language = 0x7fb4efdd85e0, organization = 0x0, priority = 0x0, subject = 0x0, user_agent = 0x7fb4efdd8540, server = 0x0, content_disposition = 0x0, accept_disposition = 0x0, diversion = 0x0, rpid = 0x0, refer_to = 0x0, session_expires = 0x0, min_se = 0x0, sipifmatch = 0x0, subscription_state = 0x0, date = 0x0, identity = 0x0, identity_info = 0x0, pai = 0x0, ppi = 0x0, path = 0x0, privacy = 0x0, body = 0x0, eoh = 0x7fb4edd58036 "12963462", realm="proxyApp", nonce="proxyAppXgyrmj82aTujp3sdBW", uri="sip:abc.def.com", response="039891b3f5999b90a645d3e808c2147c", algorithm=MD5, cnonce="l7/u88HtGJCOAmM", qop=auth, nc="..., unparsed = 0x7fb4edd58036 "12963462", realm="proxyApp", nonce="proxyAppXgyrmj82aTujp3sdBW", uri="sip:abc.def.com", response="039891b3f5999b90a645d3e808c2147c", algorithm=MD5, cnonce="l7/u88HtGJCOAmM", qop=auth, nc="..., rcv = {src_ip = {af = 2, len = 4, u = {addrl = {140411255757578, 4294967291}, addr32 = {184916746, 32692, 4294967291, 0}, addr16 = {39690, 2821, 32692, 0, 65531, 65535, 0, 0}, addr = "\n\233\005\v\264\177\000\000\373\377\377\377\000\000\000"}}, dst_ip = {af = 2, len = 4, u = {addrl = {140414021193994, 5273972}, addr32 = { 2950353162, 32692, 5273972, 0}, addr16 = {53514, 45018, 32692, 0, 31092, 80, 0, 0}, addr = "\n\321Ú¯\264\177\000\000tyP\000\000\000\000"}}, src_port = 5060, dst_port = 5060, proto_reserved1 = 32692, proto_reserved2 = -266587208, src_su = {s = {sa_family = 2, sa_data = "\023\304\n\233\005\v\000\000\000\000\000\000\000"}, sin = {sin_family = 2, sin_port = 50195, sin_addr = {s_addr = 184916746}, sin_zero = "\000\000\000\000\000\000\000"}, sin6 = {sin6_family = 2, sin6_port = 50195, sin6_flowinfo = 184916746, sin6_addr = {__in6_u = { __u6_addr8 = '\000' <repeats 15 times>, __u6_addr16 = {0, 0, 0, 0, 0, 0, 0, 0}, __u6_addr32 = {0, 0, 0, 0}}}, sin6_scope_id = 0}}, bind_address = 0x1, proto = 1 '\001'}, buf = 0x7fb4edd57d2a "REGISTER sip:abc.def.com SIP/2.0\r\nFrom: "9995551234" sip:9995551234@abc.def.com;rp=SandboxTestingRegistrations;tag=F9EEDA6C-E203EB89\r\nTo: sip:9995551234@abc.def.com\r\nCal"..., len = 782, new_uri = {s = 0x0, len = 0}, dst_uri = {s = 0x0, len = 0}, parsed_uri_ok = 1, parsed_uri = {user = {s = 0x0, len = 0}, passwd = {s = 0x0, len = 0}, host = { s = 0x7fb4edd57d37 "abc.def.com SIP/2.0\r\nFrom: "9995551234" sip:9995551234@abc.def.com;rp=SandboxTestingRegistrations;tag=F9EEDA6C-E203EB89\r\nTo: sip:9995551234@abc.def.com\r\nCall-ID: 2257e15"..., len = 20}, 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 = SIP_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 = 0}, r2 = {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 = 0}, lr_val = {s = 0x0, len = 0}, r2_val = {s = 0x0, len = 0}}, parsed_orig_ruri_ok = 0, parsed_orig_ruri = {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 = 0}, r2 = {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 = 0}, lr_val = {s = 0x0, len = 0}, r2_val = {s = 0x0, len = 0}}, add_rm = 0x0, body_lumps = 0x0, reply_lump = 0x0, add_to_branch_s = '\000' <repeats 57 times>, add_to_branch_len = 0, hash_index = 0, msg_flags = 0, flags = 0, set_global_address = {s = 0x0, len = 0}, set_global_port = {s = 0x0, len = 0}, force_send_socket = 0x0, path_vec = {s = 0x0, len = 0}} (gdb) p *msg->rcv.bind_address Cannot access memory at address 0x1
(gdb)
Thanks, Simpson
________________________________ From: "sr-users-request@lists.sip-router.org" sr-users-request@lists.sip-router.org To: sr-users@lists.sip-router.org Sent: Friday, February 17, 2012 7:34 AM Subject: sr-users Digest, Vol 81, Issue 52
Send sr-users mailing list submissions to sr-users@lists.sip-router.org
To subscribe or unsubscribe via the World Wide Web, visit http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users or, via email, send a message with subject or body 'help' to sr-users-request@lists.sip-router.org
You can reach the person managing the list at sr-users-owner@lists.sip-router.org
When replying, please edit your Subject line so it is more specific than "Re: Contents of sr-users digest..."
Today's Topics:
1. Re: ndb_redis module fails after a while (Daniel-Constantin Mierla) 2. Re: Kamailio Exits With: Segmentation Fault Error 4 in usrloc.so (Alexandr Dubovikov)
----------------------------------------------------------------------
Message: 1 Date: Fri, 17 Feb 2012 14:30:44 +0100 From: Daniel-Constantin Mierla miconda@gmail.com Subject: Re: [SR-Users] ndb_redis module fails after a while To: "SIP Router - Kamailio (OpenSER) and SIP Express Router (SER) - Users Mailing List" sr-users@lists.sip-router.org Cc: Javier Gallart jgallartm@gmail.com Message-ID: 4F3E5684.3090203@gmail.com Content-Type: text/plain; charset="iso-8859-1"; Format="flowed"
Hello,
right, very dummy paste position for resetting the redis context, use the attached patch or exchange lines 228 and 229. in redis_client.c
Thanks, Daniel
On 2/17/12 1:13 PM, Javier Gallart wrote:
Hi Daniel, Andrew
I've just tested the patch and kamailio crashes when the redis server is stopped. This is what I could get: -From the logs: Feb 17 06:33:32 r-gate-test ./kamailio[23812]: ALERT: <core> [main.c:751]: child process 23819 exited by a signal 11 Feb 17 06:33:32 r-gate-test ./kamailio[23812]: ALERT: <core> [main.c:754]: core was generated Feb 17 06:33:32 r-gate-test ./kamailio[23812]: INFO: <core> [main.c:766]: INFO: terminating due to SIGCHLD
-An the backtrace: (...) Core was generated by `./kamailio -f ../etc/kamailio/kamailio.cfg'. Program terminated with signal 11, Segmentation fault. #0 redisFree (c=0x0) at hiredis.c:817 817 if (c->fd > 0) (gdb) bt #0 redisFree (c=0x0) at hiredis.c:817 #1 0x00007f726f035461 in redisc_reconnect_server (rsrv=0x7f7271c93ac0) at redis_client.c:229 #2 0x00007f726f037240 in redisc_exec (srv=<value optimized out>, cmd=0x7fffe98c6090, argv1=<value optimized out>, argv2=<value optimized out>, argv3=<value optimized out>, res=<value optimized out>) at redis_client.c:298 #3 0x00007f726f034f7d in w_redis_cmd3 (msg=0x7f7271d7b018, ssrv=<value optimized out>, scmd=<value optimized out>, sres=0x7f7271d74b58 "h\341\313qr\177") at ndb_redis_mod.c:156 #4 0x0000000000417025 in do_action (h=0x7fffe98c6570, a=0x7f7271cc5248, msg=<value optimized out>) at action.c:1134 #5 0x000000000041e58b in run_actions (h=<value optimized out>, a=<value optimized out>, msg=<value optimized out>) at action.c:1610 #6 0x000000000041e8d4 in run_actions_safe (h=0x7fffe98c7610, a=0x7f7271c93781, msg=0x7f7271c93780) at action.c:1662 #7 0x00000000004b731d in rval_get_int (h=0x7fffe98c7610, msg=0x0, i=0x7fffe98c6bd8, rv=0x3, cache=0x4) at rvalue.c:920 #8 0x00000000004bb87c in rval_expr_eval_int (h=0x7fffe98c7610, msg=0x7f7271d7b018, res=0x7fffe98c6bd8, rve=0x7f7271cc6768) at rvalue.c:1914 #9 0x0000000000417c7c in do_action (h=0x7fffe98c7610, a=0x7f7271ccb9d0, msg=<value optimized out>) at action.c:1092 #10 0x000000000041e58b in run_actions (h=<value optimized out>, a=<value optimized out>, msg=<value optimized out>) at action.c:1610 #11 0x0000000000417cd7 in do_action (h=0x7fffe98c7610, a=0x7f7271ccbb10, msg=<value optimized out>) at action.c:1111 #12 0x000000000041e58b in run_actions (h=<value optimized out>, a=<value optimized out>, msg=<value optimized out>) at action.c:1610 #13 0x000000000041795e in do_action (h=0x7fffe98c7610, a=<value optimized out>, msg=<value optimized out>) at action.c:732 #14 0x000000000041e58b in run_actions (h=<value optimized out>, a=<value optimized out>, msg=<value optimized out>) at action.c:1610 #15 0x000000000041e862 in run_top_route (a=0x7f7271c94888, msg=0x7f7271d7b018, c=<value optimized out>) at action.c:1683 #16 0x0000000000498f36 in receive_msg ( buf=0x8bb100 "INVITE sip:34661574758@79.170.68.215:5060 http://sip:34661574758@79.170.68.215:5060 SIP/2.0\r\nVia: SIP/2.0/UDP 79.170.68.214:5060;branch=z9hG4bK-9451-1-0\r\nFrom: 34661574758 <sip:34661574758@79.170.68.214:5060 http://sip:34661574758@79.170.68.214:5060>;tag=9451SIPpTag001\r\nTo: sut <sip:"..., len=<value optimized out>, rcv_info=0x7fffe98c7910) at receive.c:207 #17 0x0000000000525987 in udp_rcv_loop () at udp_server.c:544 #18 0x00000000004635f4 in main_loop () at main.c:1585 #19 0x0000000000465e62 in main (argc=3, argv=0x7fffe98c7c08) at main.c:2475
Regards
Javi
On Fri, Feb 17, 2012 at 11:39 AM, Daniel-Constantin Mierla <miconda@gmail.com mailto:miconda@gmail.com> wrote:
Hello,
thanks for testing, indeed it was an extra declaration left over. Can you try with the new patch attached?
Cheers, Daniel
On 2/17/12 11:10 AM, Andrew Pogrebennyk wrote:
Hi Daniel,
On 02/17/2012 10:47 AM, Daniel-Constantin Mierla wrote:
I made a patch for server reconnect -- I had no access to a computer with redis lib installed for the moment, hopefully it compiles. If you can try and tell the result, it would be great, I can commit then.
I may be able to test this patch as well. Currently compilations bails out on attempt to redeclare redisc_reconnect_server function parameter:
CC (gcc) [M ndb_redis.so] ndb_redis_mod.o CC (gcc) [M ndb_redis.so] redis_client.o redis_client.c: In function 'redisc_reconnect_server': redis_client.c:206:19: error: 'rsrv' redeclared as different kind of symbol redis_client.c:202:46: note: previous definition of 'rsrv' was here make[1]: *** [redis_client.o] Error 1 make: *** [modules] Error 1
_______________________________________________ SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org mailto:sr-users@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
-- Daniel-Constantin Mierla -- http://www.asipto.com http://linkedin.com/in/miconda -- http://twitter.com/miconda
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
Hello,
received IP refers to the local IP on which the sip request was received.
In your case, the sip message is not received via "listen" socket, but via the raw sockets configured via sipcapture module. The problem is that the sipcapture is not filling this structure as it should before executing the configuration file. Core does it, and it is what modules expect to be there -- the sipcapture has to be fixed, or you have use siptrace to mirror the traffic via normal udp instead of homer protocols.
Cheers, Daniel
On 2/17/12 9:02 PM, Simpson Chua wrote:
Hi,
Since I am getting errors in from the usrloc module, I am trying another way to parse out the information I need using pv.so. I'm encountering similar segfaults issues. Here are snippets of my configs:
modparam("sipcapture", "db_url", "mysql://xxx:xxx@localhost/test_db") modparam("sipcapture", "capture_on", 1) modparam("sipcapture", "table_name", "sip_capture") modparam("sipcapture", "raw_socket_listen", "127.0.0.1:5060-9000") modparam("sipcapture", "raw_interface", "eth2") modparam("sipcapture", "raw_sock_children", 4) modparam("sipcapture", "raw_moni_capture_on", 1) modparam("sipcapture", "promiscious_on", 1)
route { if (method == "REGISTER") { if (avp_check("$si","eq/10.xxx.xxx.xxx")) { #save("location", "0x04"); # This currently results in segfault and is being addressed by Alexandr sip_capture(); xlog("The received IP is $Ri\n"); # Just to test if I am able to parse the received IP from the Via headers correctly drop; } drop; } }
Feb 17 13:41:02 ubuntu kernel: [251382.760104] kamailio[9414]: segfault at 31 ip 00007fb4ef077611 sp 00007fff0c8a6468 error 4 in pv.so[7fb4ef06a000+39000]
Core was generated by `kamailio -w /home/core'. Program terminated with signal 11, Segmentation fault. #0 pv_get_rcvip (msg=0x7fb4efdd7598, param=0x7fb4efdcef88, res=0x7fff0c8a64b0) at pv_core.c:647 647 || msg->rcv.bind_address->address_str.s==NULL)
(gdb) bt #0 pv_get_rcvip (msg=0x7fb4efdd7598, param=0x7fb4efdcef88, res=0x7fff0c8a64b0) at pv_core.c:647 #1 0x000000000049b5ad in pv_get_spec_value (msg=0x7fb4efdd7598, sp=0x7fb4efdcef70, value=0x7fff0c8a64b0) at pvapi.c:1180 #2 0x000000000049b71d in pv_printf (msg=0x7fb4efdd7598, list=<optimized out>, buf=<optimized out>, len=0x7fff0c8a6558) at pvapi.c:1239 #3 0x00007fb4ed0d442e in xlog_helper (msg=<optimized out>, xm=0x7fb4efdceef0, level=-1, line=0) at xlog.c:168 #4 0x000000000041babb in do_action (h=0x7fff0c8a73b0, a=0x7fb4efdd02a0, msg=0x7fb4efdd7598) at action.c:1122 #5 0x000000000041abe2 in run_actions (h=0x7fff0c8a73b0, a=0x7fb4efdd0080, msg=0x7fb4efdd7598) at action.c:1610 #6 0x000000000041c05b in do_action (h=0x7fff0c8a73b0, a=0x7fb4efdd10d0, msg=0x7fb4efdd7598) at action.c:1107 #7 0x000000000041abe2 in run_actions (h=0x7fff0c8a73b0, a=0x7fb4efdd10d0, msg=0x7fb4efdd7598) at action.c:1610 #8 0x000000000041c05b in do_action (h=0x7fff0c8a73b0, a=0x7fb4efdd1350, msg=0x7fb4efdd7598) at action.c:1107 #9 0x000000000041abe2 in run_actions (h=0x7fff0c8a73b0, a=0x7fb4efdd1350, msg=0x7fb4efdd7598) at action.c:1610 #10 0x0000000000422fa2 in run_top_route (a=0x7fb4efdd1350, msg=0x7fb4efdd7598, c=<optimized out>) at action.c:1683 #11 0x00000000004b061e in receive_msg (buf=<optimized out>, len=<optimized out>, rcv_info=<optimized out>) at receive.c:207 #12 0x00007fb4edb538b0 in raw_capture_rcv_loop (rsock=5, port1=5060, port2=8933, ipip=0) at sipcapture.c:1518 #13 0x00007fb4edb53e1f in init_rawsock_children () at sipcapture.c:572 #14 0x00007fb4edb54033 in child_init (rank=<optimized out>) at sipcapture.c:542 #15 0x0000000000507a0f in init_mod_child (m=0x7fb4efdcb2b0, rank=0) at sr_module.c:886 #16 0x0000000000507974 in init_mod_child (m=0x7fb4efdcb668, rank=0) at sr_module.c:883 #17 0x0000000000507974 in init_mod_child (m=0x7fb4efdcc178, rank=0) at sr_module.c:883 #18 0x0000000000507974 in init_mod_child (m=0x7fb4efdcc4b0, rank=0) at sr_module.c:883 #19 0x0000000000507974 in init_mod_child (m=0x7fb4efdccaf0, rank=0) at sr_module.c:883 #20 0x0000000000507974 in init_mod_child (m=0x7fb4efdcd030, rank=0) at sr_module.c:883 #21 0x0000000000476149 in main_loop () at main.c:1661 #22 0x000000000041a940 in main (argc=<optimized out>, argv=0x7fff0c8a7be8) at main.c:2475
(gdb) p *msg $1 = {id = 82, pid = 9418, fwd_send_flags = {f = 0 '\000', blst_imask = 0 '\000'}, rpl_send_flags = {f = 0 '\000', blst_imask = 0 '\000'}, first_line = { type = 1, len = 43, u = {request = {method = { s = 0x7fb4edd57d2a "REGISTER sip:abc.def.com SIP/2.0\r\nFrom: "9995551234" sip:9995551234@abc.def.com;rp=SandboxTestingRegistrations;tag=F9EEDA6C-E203EB89\r\nTo: sip:9995551234@abc.def.com\r\nCal"..., len = 8}, uri = { s = 0x7fb4edd57d33 "sip:abc.def.com SIP/2.0\r\nFrom: "9995551234" sip:9995551234@abc.def.com;rp=SandboxTestingRegistrations;tag=F9EEDA6C-E203EB89\r\nTo: sip:9995551234@abc.def.com\r\nCall-ID: 225"..., len = 24}, version = { s = 0x7fb4edd57d4c "SIP/2.0\r\nFrom: "9995551234" sip:9995551234@abc.def.com;rp=SandboxTestingRegistrations;tag=F9EEDA6C-E203EB89\r\nTo: sip:9995551234@abc.def.com\r\nCall-ID: 2257e150-b49dfd8d-c8d924b2@1"..., len = 7}, method_value = 32}, reply = {version = { s = 0x7fb4edd57d2a "REGISTER sip:abc.def.com SIP/2.0\r\nFrom: "9995551234" sip:9995551234@abc.def.com;rp=SandboxTestingRegistrations;tag=F9EEDA6C-E203EB89\r\nTo: sip:9995551234@abc.def.com\r\nCal"..., len = 8}, status = { s = 0x7fb4edd57d33 "sip:abc.def.com SIP/2.0\r\nFrom: "9995551234" sip:9995551234@abc.def.com;rp=SandboxTestingRegistrations;tag=F9EEDA6C-E203EB89\r\nTo: sip:9995551234@abc.def.com\r\nCall-ID: 225"..., len = 24}, reason = { s = 0x7fb4edd57d4c "SIP/2.0\r\nFrom: "9995551234" sip:9995551234@abc.def.com;rp=SandboxTestingRegistrations;tag=F9EEDA6C-E203EB89\r\nTo: sip:9995551234@abc.def.com\r\nCall-ID: 2257e150-b49dfd8d-c8d924b2@1"..., len = 7}, statuscode = 32}}}, via1 = 0x7fb4efdd7ef0, via2 = 0x7fb4efdd8218, headers = 0x7fb4efdd7e50, last_header = 0x7fb4efdd87c0, parsed_flag = 18446744073709551615, h_via1 = 0x7fb4efdd80d8, h_via2 = 0x7fb4efdd8178, callid = 0x7fb4efdd19b0, to = 0x7fb4efdd1910, cseq = 0x7fb4efdd7c80, from = 0x7fb4efdd7e50, contact = 0x7fb4efdd84a0, maxforwards = 0x7fb4efdd8680, route = 0x0, record_route = 0x0, content_type = 0x0, content_length = 0x7fb4efdd87c0, authorization = 0x0, expires = 0x7fb4efdd8720, proxy_auth = 0x0, supported = 0x0, require = 0x0, proxy_require = 0x0, unsupported = 0x0, allow = 0x0, event = 0x0, accept = 0x0, accept_language = 0x7fb4efdd85e0, organization = 0x0, priority = 0x0, subject = 0x0, user_agent = 0x7fb4efdd8540, server = 0x0, content_disposition = 0x0, accept_disposition = 0x0, diversion = 0x0, rpid = 0x0, refer_to = 0x0, session_expires = 0x0, min_se = 0x0, sipifmatch = 0x0, subscription_state = 0x0, date = 0x0, identity = 0x0, identity_info = 0x0, pai = 0x0, ppi = 0x0, path = 0x0, privacy = 0x0, body = 0x0, eoh = 0x7fb4edd58036 "12963462", realm="proxyApp", nonce="proxyAppXgyrmj82aTujp3sdBW", uri="sip:abc.def.com", response="039891b3f5999b90a645d3e808c2147c", algorithm=MD5, cnonce="l7/u88HtGJCOAmM", qop=auth, nc="..., unparsed = 0x7fb4edd58036 "12963462", realm="proxyApp", nonce="proxyAppXgyrmj82aTujp3sdBW", uri="sip:abc.def.com", response="039891b3f5999b90a645d3e808c2147c", algorithm=MD5, cnonce="l7/u88HtGJCOAmM", qop=auth, nc="..., rcv = {src_ip = {af = 2, len = 4, u = {addrl = {140411255757578, 4294967291}, addr32 = {184916746, 32692, 4294967291, 0}, addr16 = {39690, 2821, 32692, 0, 65531, 65535, 0, 0}, addr = "\n\233\005\v\264\177\000\000\373\377\377\377\000\000\000"}}, dst_ip = {af = 2, len = 4, u = {addrl = {140414021193994, 5273972}, addr32 = { 2950353162, 32692, 5273972, 0}, addr16 = {53514, 45018, 32692, 0, 31092, 80, 0, 0}, addr = "\n\321Ú¯\264\177\000\000tyP\000\000\000\000"}}, src_port = 5060, dst_port = 5060, proto_reserved1 = 32692, proto_reserved2 = -266587208, src_su = {s = {sa_family = 2, sa_data = "\023\304\n\233\005\v\000\000\000\000\000\000\000"}, sin = {sin_family = 2, sin_port = 50195, sin_addr = {s_addr = 184916746}, sin_zero = "\000\000\000\000\000\000\000"}, sin6 = {sin6_family = 2, sin6_port = 50195, sin6_flowinfo = 184916746, sin6_addr = {__in6_u = { __u6_addr8 = '\000' <repeats 15 times>, __u6_addr16 = {0, 0, 0, 0, 0, 0, 0, 0}, __u6_addr32 = {0, 0, 0, 0}}}, sin6_scope_id = 0}}, bind_address = 0x1, proto = 1 '\001'}, buf = 0x7fb4edd57d2a "REGISTER sip:abc.def.com SIP/2.0\r\nFrom: "9995551234" sip:9995551234@abc.def.com;rp=SandboxTestingRegistrations;tag=F9EEDA6C-E203EB89\r\nTo: sip:9995551234@abc.def.com\r\nCal"..., len = 782, new_uri = {s = 0x0, len = 0}, dst_uri = {s = 0x0, len = 0}, parsed_uri_ok = 1, parsed_uri = {user = {s = 0x0, len = 0}, passwd = {s = 0x0, len = 0}, host = { s = 0x7fb4edd57d37 "abc.def.com SIP/2.0\r\nFrom: "9995551234" sip:9995551234@abc.def.com;rp=SandboxTestingRegistrations;tag=F9EEDA6C-E203EB89\r\nTo: sip:9995551234@abc.def.com\r\nCall-ID: 2257e15"..., len = 20}, 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 = SIP_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 = 0}, r2 = {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 = 0}, lr_val = {s = 0x0, len = 0}, r2_val = {s = 0x0, len = 0}}, parsed_orig_ruri_ok = 0, parsed_orig_ruri = {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 = 0}, r2 = {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 = 0}, lr_val = {s = 0x0, len = 0}, r2_val = {s = 0x0, len = 0}}, add_rm = 0x0, body_lumps = 0x0, reply_lump = 0x0, add_to_branch_s = '\000' <repeats 57 times>, add_to_branch_len = 0, hash_index = 0, msg_flags = 0, flags = 0, set_global_address = {s = 0x0, len = 0}, set_global_port = {s = 0x0, len = 0}, force_send_socket = 0x0, path_vec = {s = 0x0, len = 0}} (gdb) p *msg->rcv.bind_address Cannot access memory at address 0x1
(gdb)
Thanks, Simpson
*From:* "sr-users-request@lists.sip-router.org" sr-users-request@lists.sip-router.org *To:* sr-users@lists.sip-router.org *Sent:* Friday, February 17, 2012 7:34 AM *Subject:* sr-users Digest, Vol 81, Issue 52
Send sr-users mailing list submissions to sr-users@lists.sip-router.org mailto:sr-users@lists.sip-router.org
To subscribe or unsubscribe via the World Wide Web, visit http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users or, via email, send a message with subject or body 'help' to sr-users-request@lists.sip-router.org mailto:sr-users-request@lists.sip-router.org
You can reach the person managing the list at sr-users-owner@lists.sip-router.org mailto:sr-users-owner@lists.sip-router.org
When replying, please edit your Subject line so it is more specific than "Re: Contents of sr-users digest..."
Today's Topics:
- Re: ndb_redis module fails after a while (Daniel-Constantin Mierla)
- Re: Kamailio Exits With: Segmentation Fault Error 4 in usrloc.so (Alexandr Dubovikov)
Message: 1 Date: Fri, 17 Feb 2012 14:30:44 +0100 From: Daniel-Constantin Mierla <miconda@gmail.com mailto:miconda@gmail.com> Subject: Re: [SR-Users] ndb_redis module fails after a while To: "SIP Router - Kamailio (OpenSER) and SIP Express Router (SER) - Users Mailing List" <sr-users@lists.sip-router.org mailto:sr-users@lists.sip-router.org> Cc: Javier Gallart <jgallartm@gmail.com mailto:jgallartm@gmail.com> Message-ID: <4F3E5684.3090203@gmail.com mailto:4F3E5684.3090203@gmail.com> Content-Type: text/plain; charset="iso-8859-1"; Format="flowed"
Hello,
right, very dummy paste position for resetting the redis context, use the attached patch or exchange lines 228 and 229. in redis_client.c
Thanks, Daniel
On 2/17/12 1:13 PM, Javier Gallart wrote:
Hi Daniel, Andrew
I've just tested the patch and kamailio crashes when the redis server is stopped. This is what I could get: -From the logs: Feb 17 06:33:32 r-gate-test ./kamailio[23812]: ALERT: <core> [main.c:751]: child process 23819 exited by a signal 11 Feb 17 06:33:32 r-gate-test ./kamailio[23812]: ALERT: <core> [main.c:754]: core was generated Feb 17 06:33:32 r-gate-test ./kamailio[23812]: INFO: <core> [main.c:766]: INFO: terminating due to SIGCHLD
-An the backtrace: (...) Core was generated by `./kamailio -f ../etc/kamailio/kamailio.cfg'. Program terminated with signal 11, Segmentation fault. #0 redisFree (c=0x0) at hiredis.c:817 817 if (c->fd > 0) (gdb) bt #0 redisFree (c=0x0) at hiredis.c:817 #1 0x00007f726f035461 in redisc_reconnect_server (rsrv=0x7f7271c93ac0) at redis_client.c:229 #2 0x00007f726f037240 in redisc_exec (srv=<value optimized out>, cmd=0x7fffe98c6090, argv1=<value optimized out>, argv2=<value optimized out>, argv3=<value optimized out>, res=<value optimized out>) at redis_client.c:298 #3 0x00007f726f034f7d in w_redis_cmd3 (msg=0x7f7271d7b018, ssrv=<value optimized out>, scmd=<value optimized out>, sres=0x7f7271d74b58 "h\341\313qr\177") at ndb_redis_mod.c:156 #4 0x0000000000417025 in do_action (h=0x7fffe98c6570, a=0x7f7271cc5248, msg=<value optimized out>) at action.c:1134 #5 0x000000000041e58b in run_actions (h=<value optimized out>, a=<value optimized out>, msg=<value optimized out>) at action.c:1610 #6 0x000000000041e8d4 in run_actions_safe (h=0x7fffe98c7610, a=0x7f7271c93781, msg=0x7f7271c93780) at action.c:1662 #7 0x00000000004b731d in rval_get_int (h=0x7fffe98c7610, msg=0x0, i=0x7fffe98c6bd8, rv=0x3, cache=0x4) at rvalue.c:920 #8 0x00000000004bb87c in rval_expr_eval_int (h=0x7fffe98c7610, msg=0x7f7271d7b018, res=0x7fffe98c6bd8, rve=0x7f7271cc6768) at rvalue.c:1914 #9 0x0000000000417c7c in do_action (h=0x7fffe98c7610, a=0x7f7271ccb9d0, msg=<value optimized out>) at action.c:1092 #10 0x000000000041e58b in run_actions (h=<value optimized out>, a=<value optimized out>, msg=<value optimized out>) at action.c:1610 #11 0x0000000000417cd7 in do_action (h=0x7fffe98c7610, a=0x7f7271ccbb10, msg=<value optimized out>) at action.c:1111 #12 0x000000000041e58b in run_actions (h=<value optimized out>, a=<value optimized out>, msg=<value optimized out>) at action.c:1610 #13 0x000000000041795e in do_action (h=0x7fffe98c7610, a=<value optimized out>, msg=<value optimized out>) at action.c:732 #14 0x000000000041e58b in run_actions (h=<value optimized out>, a=<value optimized out>, msg=<value optimized out>) at action.c:1610 #15 0x000000000041e862 in run_top_route (a=0x7f7271c94888, msg=0x7f7271d7b018, c=<value optimized out>) at action.c:1683 #16 0x0000000000498f36 in receive_msg ( buf=0x8bb100 "INVITE sip:34661574758@79.170.68.215:5060 http://sip:34661574758@79.170.68.215:5060 SIP/2.0\r\nVia: SIP/2.0/UDP 79.170.68.214:5060;branch=z9hG4bK-9451-1-0\r\nFrom: 34661574758 <sip:34661574758@79.170.68.214:5060 http://sip:34661574758@79.170.68.214:5060>;tag=9451SIPpTag001\r\nTo: sut <sip:"..., len=<value optimized out>, rcv_info=0x7fffe98c7910) at receive.c:207 #17 0x0000000000525987 in udp_rcv_loop () at udp_server.c:544 #18 0x00000000004635f4 in main_loop () at main.c:1585 #19 0x0000000000465e62 in main (argc=3, argv=0x7fffe98c7c08) at main.c:2475
Regards
Javi
On Fri, Feb 17, 2012 at 11:39 AM, Daniel-Constantin Mierla <miconda@gmail.com mailto:miconda@gmail.com
<mailto:miconda@gmail.com mailto:miconda@gmail.com>> wrote:
Hello,
thanks for testing, indeed it was an extra declaration left over. Can you try with the new patch attached?
Cheers, Daniel
On 2/17/12 11:10 AM, Andrew Pogrebennyk wrote:
Hi Daniel, On 02/17/2012 10:47 AM, Daniel-Constantin Mierla wrote: I made a patch for server reconnect -- I had no access to a computer with redis lib installed for the moment, hopefully it compiles. If you can try and tell the result, it would be great, I can commit then. I may be able to test this patch as well. Currently compilations bails out on attempt to redeclare redisc_reconnect_server function parameter: CC (gcc) [M ndb_redis.so] ndb_redis_mod.o CC (gcc) [M ndb_redis.so] redis_client.o redis_client.c: In function 'redisc_reconnect_server': redis_client.c:206:19: error: 'rsrv' redeclared as different kind of symbol redis_client.c:202:46: note: previous definition of 'rsrv' was here make[1]: *** [redis_client.o] Error 1 make: *** [modules] Error 1 _______________________________________________ SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
sr-users@lists.sip-router.org mailto:sr-users@lists.sip-router.org <mailto:sr-users@lists.sip-router.org
mailto:sr-users@lists.sip-router.org>
http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
-- Daniel-Constantin Mierla -- http://www.asipto.com http://linkedin.com/in/miconda -- http://twitter.com/miconda
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org mailto:sr-users@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
-- Daniel-Constantin Mierla -- http://www.asipto.com http://linkedin.com/in/miconda -- http://twitter.com/miconda