Hi Bogdan,<div><br></div><div><a href="http://pastebin.com/RmVVW8N7">http://pastebin.com/RmVVW8N7</a></div><div><br></div><div><a href="http://pastebin.com/RmVVW8N7"></a>If you look at calls to <span class="Apple-style-span" style="font-family: monospace; font-size: 12px; color: rgb(24, 24, 24); line-height: 18px; ">route</span><span class="Apple-style-span" style="font-family: monospace; font-size: 12px; line-height: 18px; "><font class="Apple-style-span" color="#009900">(</font><font class="Apple-style-span" color="#181818">filter_codecs</font></span><span class="Apple-style-span" style="font-family: monospace; font-size: 12px; line-height: 18px; "><font class="Apple-style-span" color="#009900">).</font></span></div>
<div><font class="Apple-style-span" color="#009900" face="monospace"><span class="Apple-style-span" style="font-size: 12px; line-height: 18px;"><br></span></font></div><div><font class="Apple-style-span" color="#009900" face="monospace"><span class="Apple-style-span" style="font-size: 12px; line-height: 18px;"><span class="Apple-style-span" style="color: rgb(0, 0, 0); font-family: arial; line-height: normal; font-size: small; ">Also, the route(main) gets called on failure when a 4XX/5XX gets returned from our softswitch for load balancing purposes.  This happens because the rtp proxies are on different hosts and we must attempt to reproxy the call.</span></span></font></div>
<div><font class="Apple-style-span" color="#009900" face="monospace"><span class="Apple-style-span" style="font-size: 12px; line-height: 18px;"><span class="Apple-style-span" style="color: rgb(0, 0, 0); font-family: arial; line-height: normal; font-size: small; "><br>
</span></span></font></div><div><font class="Apple-style-span" color="#009900" face="monospace"><span class="Apple-style-span" style="font-size: 12px; line-height: 18px;"><span class="Apple-style-span" style="color: rgb(0, 0, 0); font-family: arial; line-height: normal; font-size: small; ">If there is a cleaner way to do this, I&#39;d appreciate it, but for the most part (except for the segfault) the above seems to work.</span></span></font></div>
<div><font class="Apple-style-span" color="#009900" face="monospace"><span class="Apple-style-span" style="font-size: 12px; line-height: 18px;"><span class="Apple-style-span" style="color: rgb(0, 0, 0); font-family: arial; line-height: normal; font-size: small; "><br>
Regards,</span></span></font></div><div><font class="Apple-style-span" color="#009900" face="monospace"><span class="Apple-style-span" style="font-size: 12px; line-height: 18px;"><span class="Apple-style-span" style="color: rgb(0, 0, 0); font-family: arial; line-height: normal; font-size: small; ">Bobby Smith</span></span></font></div>
<div><br><div class="gmail_quote">On Tue, Dec 7, 2010 at 6:57 AM, Bogdan-Andrei Iancu <span dir="ltr">&lt;<a href="mailto:bogdan@voice-system.ro">bogdan@voice-system.ro</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Hi Bobby,<br>
<br>
in what kind of routes do you use codec related ops ?<br>
<br>
Regards,<br>
Bogdan<br>
<br>
Bobby Smith wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">
On revision 7081 (opensips trunk), we&#39;ve run into a couple of situations where cores were generated from a segfault.  They both look the same, contents attached.<br>
<br>
<br>
#0  backup () at codecs.c:104<br>
104                             int n = old-&gt;len;<br>
(gdb) bt full<br>
#0  backup () at codecs.c:104<br>
        l = 0x79d8b0<br>
        old = 0x0<br>
        n = &lt;value optimized out&gt;<br>
        len = 1<br>
        i = 0<br>
        __FUNCTION__ = &quot;backup&quot;<br>
#1  0x00002b0d01fb00e1 in pre_route_callback (msg=0x2b0d01b8b140, param=0x79caf0) at codecs.c:169<br>
No locals.<br>
#2  0x000000000046d9be in exec_post_cb (msg=0x2b0d01b8b140) at script_cb.c:198<br>
No locals.<br>
#3  exec_pre_route_cb (msg=0x2b0d01b8b140) at script_cb.c:231<br>
No locals.<br>
#4  0x0000000000412153 in run_top_route (a=0x794e70, msg=0x2b0d01b8b140) at action.c:181<br>
        bk_action_flags = 0<br>
        bk_rec_lev = 0<br>
#5  0x00002b0d0197777f in run_failure_handlers (Trans=0x2b0d03954950, new_code=&lt;value optimized out&gt;, branch=&lt;value optimized out&gt;, should_store=0x7fff00703b58, should_relay=0x7fff00703b5c, cancel_bitmap=&lt;value optimized out&gt;,<br>

    reply=0x796cc0) at t_reply.c:613<br>
        faked_req = {id = 6, first_line = {type = 1, len = 53, u = {request = {method = {<br></div>
                  s = 0x2b0d0395bb00 &quot;OPTIONS <a href="mailto:sip%3A100@internal-sip.mycompany.com" target="_blank">sip:100@internal-sip.mycompany.com</a> &lt;mailto:<a href="mailto:sip%253A100@internal-sip.mycompany.com" target="_blank">sip%3A100@internal-sip.mycompany.com</a>&gt; SIP/2.0\r\nRecord-Route: &lt;sip:4.2.46.245;lr=on;ftag=6364386232656635313363340133363632373934353030&gt;\r\nVia: SIP/2.0/UDP 4.2.46.245;branch=z9hG4bK8702.83&quot;..., len = 7}, uri = {<br>

                  s = 0x2b0d0395bb08 &quot;<a href="mailto:sip%3A100@internal-sip.mycompany.com" target="_blank">sip:100@internal-sip.mycompany.com</a> &lt;mailto:<a href="mailto:sip%253A100@internal-sip.mycompany.com" target="_blank">sip%3A100@internal-sip.mycompany.com</a>&gt; SIP/2.0\r\nRecord-Route: &lt;sip:4.2.46.245;lr=on;ftag=6364386232656635313363340133363632373934353030&gt;\r\nVia: SIP/2.0/UDP 4.2.46.245;branch=z9hG4bK8702.83cfa2a.0\r&quot;..., len = 35}, version = {<br>

                  s = 0x2b0d0395bb2c &quot;SIP/2.0\r\nRecord-Route: &lt;sip:4.2.46.245;lr=on;ftag=6364386232656635313363340133363632373934353030&gt;\r\nVia: SIP/2.0/UDP 4.2.46.245;branch=z9hG4bK8702.83cfa2a.0\r\nVia: SIP/2.0/UDP <a href="http://109.104.88.29:5064" target="_blank">109.104.88.29:5064</a> &lt;<a href="http://109.104.88.29:5064" target="_blank">http://109.104.88.29:5064</a>&gt;&quot;..., len = 7}, method_value = 32}, reply = {version = {<br>

                  s = 0x2b0d0395bb00 &quot;OPTIONS <a href="mailto:sip%3A100@internal-sip.mycompany.com" target="_blank">sip:100@internal-sip.mycompany.com</a> &lt;mailto:<a href="mailto:sip%253A100@internal-sip.mycompany.com" target="_blank">sip%3A100@internal-sip.mycompany.com</a>&gt; SIP/2.0\r\nRecord-Route: &lt;sip:4.2.46.245;lr=on;ftag=6364386232656635313363340133363632373934353030&gt;\r\nVia: SIP/2.0/UDP 4.2.46.245;branch=z9hG4bK8702.83&quot;..., len = 7}, status = {<br>

                  s = 0x2b0d0395bb08 &quot;<a href="mailto:sip%3A100@internal-sip.mycompany.com" target="_blank">sip:100@internal-sip.mycompany.com</a> &lt;mailto:<a href="mailto:sip%253A100@internal-sip.mycompany.com" target="_blank">sip%3A100@internal-sip.mycompany.com</a>&gt; SIP/2.0\r\nRecord-Route: &lt;sip:4.2.46.245;lr=on;ftag=6364386232656635313363340133363632373934353030&gt;\r\nVia: SIP/2.0/UDP 4.2.46.245;branch=z9hG4bK8702.83cfa2a.0\r&quot;..., len = 35}, reason = {<br>

                  s = 0x2b0d0395bb2c &quot;SIP/2.0\r\nRecord-Route: &lt;sip:4.2.46.245;lr=on;ftag=6364386232656635313363340133363632373934353030&gt;\r\nVia: SIP/2.0/UDP 4.2.46.245;branch=z9hG4bK8702.83cfa2a.0\r\nVia: SIP/2.0/UDP <a href="http://109.104.88.29:5064" target="_blank">109.104.88.29:5064</a> &lt;<a href="http://109.104.88.29:5064" target="_blank">http://109.104.88.29:5064</a>&gt;&quot;..., len = 7}, statuscode = 32}}}, via1 = 0x2b0d0395bdf8, via2 = 0x2b0d0395bf70, headers = 0x2b0d0395bd68, last_header = 0x2b0d0395c530, parsed_flag = 18446744073709551615, h_via1 = 0x2b0d0395bdb0, h_via2 = 0x2b0d0395bf28,<div class="im">
<br>
          callid = 0x2b0d0395c4e8, to = 0x2b0d0395c240, cseq = 0x2b0d0395c470, from = 0x2b0d0395c168, contact = 0x2b0d0395c428, maxforwards = 0x2b0d0395c530, route = 0x0, record_route = 0x2b0d0395bd68, path = 0x0, content_type = 0x0,<br>

          content_length = 0x2b0d0395c120, authorization = 0x0, expires = 0x0, proxy_auth = 0x0, supported = 0x0, proxy_require = 0x0, unsupported = 0x0, allow = 0x0, event = 0x0, accept = 0x2b0d0395c1b0, accept_language = 0x0,<br>

          organization = 0x0, priority = 0x0, subject = 0x0, user_agent = 0x2b0d0395c1f8, content_disposition = 0x0, accept_disposition = 0x0, diversion = 0x0, rpid = 0x0, refer_to = 0x0, session_expires = 0x0, min_se = 0x0, ppi = 0x0,<br>

          pai = 0x0, privacy = 0x0, sdp = 0x0, multi = 0x0, eoh = 0x2b0d0395bd63 &quot;\r\n&quot;, unparsed = 0x2b0d0395bd63 &quot;\r\n&quot;, rcv = {src_ip = {af = 2, len = 4, u = {addrl = {4113468365, 7}, addr32 = {4113468365, 0, 7, 0}, addr16 = {35789,<br>

                  62766, 0, 0, 7, 0, 0, 0}, addr = &quot;Í.\365\000\000\000\000\a\000\000\000\000\000\000&quot;}}, dst_ip = {af = 2, len = 4, u = {addrl = {2519632845, 0}, addr32 = {2519632845, 0, 0, 0}, addr16 = {35789, 38446, 0, 0, 0, 0, 0,<br>

                  0}, addr = &quot;Í.\226&quot;, &#39;\000&#39; &lt;repeats 11 times&gt;}}, src_port = 5060, dst_port = 5060, proto = 1, proto_reserved1 = 0, proto_reserved2 = 0, src_su = {s = {sa_family = 2,<br>
                sa_data = &quot;\023\304Í.\365\000\000\000\000\000\000\000&quot;}, sin = {sin_family = 2, sin_port = 50195, sin_addr = {s_addr = 4113468365}, sin_zero = &quot;\000\000\000\000\000\000\000&quot;}, sin6 = {sin6_family = 2,<br>

                sin6_port = 50195, sin6_flowinfo = 4113468365, sin6_addr = {in6_u = {u6_addr8 = &#39;\000&#39; &lt;repeats 15 times&gt;, u6_addr16 = {0, 0, 0, 0, 0, 0, 0, 0}, u6_addr32 = {0, 0, 0, 0}}}, sin6_scope_id = 0}}, bind_address = 0x795ca0},<br>
</div>
          buf = 0x2b0d0395bb00 &quot;OPTIONS <a href="mailto:sip%3A100@internal-sip.mycompany.com" target="_blank">sip:100@internal-sip.mycompany.com</a> &lt;mailto:<a href="mailto:sip%253A100@internal-sip.mycompany.com" target="_blank">sip%3A100@internal-sip.mycompany.com</a>&gt; SIP/2.0\r\nRecord-Route: &lt;sip:4.2.46.245;lr=on;ftag=6364386232656635313363340133363632373934353030&gt;\r\nVia: SIP/2.0/UDP 4.2.46.245;branch=z9hG4bK8702.83&quot;..., len = 613, new_uri = {s = 0x79c4f0 &quot;<a href="mailto:sip%3A100@internal-sip.mycompany.com" target="_blank">sip:100@internal-sip.mycompany.com</a> &lt;mailto:<a href="mailto:sip%253A100@internal-sip.mycompany.com" target="_blank">sip%3A100@internal-sip.mycompany.com</a>&gt;&quot;, len = 35}, dst_uri = {s = 0x0, len = 0}, parsed_uri_ok = 0, parsed_uri = {user = {<br>

              s = 0x2b0d0395bb0c &quot;<a href="mailto:100@internal-sip.mycompany.com" target="_blank">100@internal-sip.mycompany.com</a> &lt;mailto:<a href="mailto:100@internal-sip.mycompany.com" target="_blank">100@internal-sip.mycompany.com</a>&gt; SIP/2.0\r\nRecord-Route: &lt;sip:4.2.46.245;lr=on;ftag=6364386232656635313363340133363632373934353030&gt;\r\nVia: SIP/2.0/UDP 4.2.46.245;branch=z9hG4bK8702.83cfa2a.0\r\nVia&quot;..., len = 3}, passwd = {s = 0x0, len = 0}, host = {<br>

              s = 0x2b0d0395bb10 &quot;<a href="http://internal-sip.mycompany.com" target="_blank">internal-sip.mycompany.com</a> &lt;<a href="http://internal-sip.mycompany.com" target="_blank">http://internal-sip.mycompany.com</a>&gt; SIP/2.0\r\nRecord-Route: &lt;sip:4.2.46.245;lr=on;ftag=6364386232656635313363340133363632373934353030&gt;\r\nVia: SIP/2.0/UDP 4.2.46.245;branch=z9hG4bK8702.83cfa2a.0\r\nVia: SI&quot;..., len = 27}, port = {s = 0x0, len = 0}, params = {s = 0x0, len = 0}, headers = {s = 0x0, len = 0}, port_no = 0, proto = 0, type = SIP_URI_T, transport = {s = 0x0, len = 0}, ttl = {s = 0x0, len = 0}, user_param = {s = 0x0,<div>
<div></div><div class="h5"><br>
              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},<br>

            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,<br>

              len = 0}, host = {s = 0x0, len = 0}, port = {s = 0x0, len = 0}, params = {s = 0x0, len = 0}, headers = {s = 0x0, len = 0}, port_no = 0, proto = 0, type = ERROR_URI_T, transport = {s = 0x0, len = 0}, ttl = {s = 0x0,<br>

              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},<br>

            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,<br>

          add_to_branch_s = &#39;\000&#39; &lt;repeats 57 times&gt;, add_to_branch_len = 0, hash_index = 8312, flags = 0, msg_flags = 32, set_global_address = {s = 0x0, len = 0}, set_global_port = {s = 0x0, len = 0}, force_send_socket = 0x0,<br>

          path_vec = {s = 0x0, len = 0}, msg_cb = 0x0}<br>
        __FUNCTION__ = &quot;run_failure_handlers&quot;<br>
#6  t_should_relay_response (Trans=0x2b0d03954950, new_code=&lt;value optimized out&gt;, branch=&lt;value optimized out&gt;, should_store=0x7fff00703b58, should_relay=0x7fff00703b5c, cancel_bitmap=&lt;value optimized out&gt;, reply=0x796cc0)<br>

    at t_reply.c:911<br>
        branch_cnt = 1<br>
        picked_code = &lt;value optimized out&gt;<br>
        inv_through = &lt;value optimized out&gt;<br>
        do_cancel = 0<br>
        __FUNCTION__ = &quot;t_should_relay_response&quot;<br>
#7  0x00002b0d01979392 in relay_reply (t=0x79c678, p_msg=0x796cc0, branch=7354464, msg_status=404, cancel_bitmap=0x79d8b0) at t_reply.c:1125<br>
        relay = &lt;value optimized out&gt;<br>
<br>
l = 0x79d8b0save_clone = &lt;value optimized out&gt;<br>
        buf = &lt;value optimized out&gt;<br>
        res_len = 0<br>
        relayed_code = 404<br>
        relayed_msg = &lt;value optimized out&gt;<br>
        bm = {to_tag_val = {s = 0x7fff00703c3c &quot;&quot;, len = -1}}<br>
        totag_retr = &lt;value optimized out&gt;<br>
        reply_status = RPS_ERROR<br>
        uas_rb = &lt;value optimized out&gt;<br>
        cb_s = {s = 0x796cc0 &quot;\005&quot;, len = 7704384}<br>
        text = {s = 0x500000000796cc0 &lt;Address 0x500000000796cc0 out of bounds&gt;, len = 528}<br>
        __FUNCTION__ = &quot;relay_reply&quot;<br>
#8  0x00002b0d0197a980 in reply_received (p_msg=0x796cc0) at t_reply.c:1494<br>
        msg_status = 404<br>
        branch = 7354464<br>
        reply_status = &lt;value optimized out&gt;<br>
        timer = &lt;value optimized out&gt;<br>
        cancel_bitmap = 0<br>
        uac = 0x2b0d03954b28<br>
        t = 0x2b0d03954950<br>
        backup_list = 0x0<br>
        __FUNCTION__ = &quot;reply_received&quot;<br>
#9  0x0000000000421e98 in forward_reply (msg=0x796cc0) at forward.c:561<br>
        new_buf = &lt;value optimized out&gt;<br>
        to = &lt;value optimized out&gt;<br>
        new_len = &lt;value optimized out&gt;<br>
        mod = 0x7849f8<br>
        proto = &lt;value optimized out&gt;<br>
        id = &lt;value optimized out&gt;<br>
        send_sock = &lt;value optimized out&gt;<br>
        len = &lt;value optimized out&gt;<br>
        __FUNCTION__ = &quot;forward_reply&quot;<br>
#10 0x00000000004570c2 in receive_msg (<br>
    buf=0x758f40 &quot;SIP/2.0 404 Not Found\r\nVia: SIP/2.0/UDP 4.2.46.150;branch=z9hG4bK8702.d1287257.0;rport=5060\r\nVia: SIP/2.0/UDP 4.2.46.245;branch=z9hG4bK8702.83cfa2a.0\r\nVia: SIP/2.0/UDP 109.104.88.29:5064;recei&quot;...,<br>

    len=528, rcv_info=0x7fff00703d20) at receive.c:200<br>
        msg = 0x79c678<br>
        __FUNCTION__ = &quot;receive_msg&quot;<br>
#11 0x000000000049be14 in udp_rcv_loop () at udp_server.c:492<br>
        len = 528<br>
        tmp = 0x13c4 &lt;Address 0x13c4 out of bounds&gt;<br>
        from = &lt;value optimized out&gt;<br>
        fromlen = 16<br>
        ri = {src_ip = {af = 2, len = 4, u = {addrl = {3526265805, 6}, addr32 = {3526265805, 0, 6, 0}, addr16 = {35789, 53806, 0, 0, 6, 0, 0, 0}, addr = &quot;Í.\322\000\000\000\000\006\000\000\000\000\000\000&quot;}}, dst_ip = {af = 2,<br>

            len = 4, u = {addrl = {2519632845, 0}, addr32 = {2519632845, 0, 0, 0}, addr16 = {35789, 38446, 0, 0, 0, 0, 0, 0}, addr = &quot;Í.\226&quot;, &#39;\000&#39; &lt;repeats 11 times&gt;}}, src_port = 5060, dst_port = 5060, proto = 1,<br>

          proto_reserved1 = 0, proto_reserved2 = 0, src_su = {s = {sa_family = 2, sa_data = &quot;\023\304Í.\322\000\000\000\000\000\000\000&quot;}, sin = {sin_family = 2, sin_port = 50195, sin_addr = {s_addr = 3526265805},<br>

              sin_zero = &quot;\000\000\000\000\000\000\000&quot;}, sin6 = {sin6_family = 2, sin6_port = 50195, sin6_flowinfo = 3526265805, sin6_addr = {in6_u = {u6_addr8 = &#39;\000&#39; &lt;repeats 15 times&gt;, u6_addr16 = {0, 0, 0, 0, 0, 0, 0, 0},<br>

                  u6_addr32 = {0, 0, 0, 0}}}, sin6_scope_id = 0}}, bind_address = 0x795ca0}<br>
        p = 0x0<br>
        buf = &quot;SIP/2.0 404 Not Found\r\nVia: SIP/2.0/UDP 4.2.46.150;branch=z9hG4bK8702.d1287257.0;rport=5060\r\nVia: SIP/2.0/UDP 4.2.46.245;branch=z9hG4bK8702.83cfa2a.0\r\nVia: SIP/2.0/UDP 109.104.88.29:5064;recei&quot;...<br>

        __FUNCTION__ = &quot;udp_rcv_loop&quot;<br>
#12 0x000000000042a65d in main_loop (argc=3, argv=&lt;value optimized out&gt;) at main.c:818<br>
        i = 1<br>
        pid = &lt;value optimized out&gt;<br>
        si = 0x0<br>
        startup_done = 0x0<br>
        chd_rank = 6<br>
        __FUNCTION__ = &quot;main_loop&quot;<br>
#13 main (argc=3, argv=&lt;value optimized out&gt;) at main.c:1388<br>
        cfg_log_stderr = &lt;value optimized out&gt;<br>
        cfg_stream = 0xf8d0010<br>
        c = &lt;value optimized out&gt;<br>
        r = &lt;value optimized out&gt;<br>
<br>
        old = 0x0<br>
        n = &lt;value optimized out&gt;<br>
        len = 1<br>
        i = 0<br>
        __FUNCTION__ = &quot;backup&quot;<br></div></div>
------------------------------------------------------------------------<br>
<br>
_______________________________________________<br>
Users mailing list<br>
<a href="mailto:Users@lists.opensips.org" target="_blank">Users@lists.opensips.org</a><br>
<a href="http://lists.opensips.org/cgi-bin/mailman/listinfo/users" target="_blank">http://lists.opensips.org/cgi-bin/mailman/listinfo/users</a><br>
  <br>
</blockquote>
<br>
<br>
-- <br>
Bogdan-Andrei Iancu<br>
OpenSIPS Bootcamp<br>
15 - 19 November 2010, Edison, New Jersey, USA<br>
<a href="http://www.voice-system.ro" target="_blank">www.voice-system.ro</a><br>
<br>
<br>
_______________________________________________<br>
Users mailing list<br>
<a href="mailto:Users@lists.opensips.org" target="_blank">Users@lists.opensips.org</a><br>
<a href="http://lists.opensips.org/cgi-bin/mailman/listinfo/users" target="_blank">http://lists.opensips.org/cgi-bin/mailman/listinfo/users</a><br>
</blockquote></div><br></div>