[SR-Users] potential PRACK related topos bug

Juha Heinanen jh at tutpro.com
Tue Apr 20 13:09:57 CEST 2021


Daniel-Constantin Mierla writes:

> Can you try with latest master branch? I pushed a commit to topos
> module.

Tried with latest master and the following in-dialog code:

    if (!loose_route_mode("1")) {
        if (is_method("ACK")) {
            if (t_check_trans()) {
                t_relay();
            } else {
                xinfo("Discarding unmatched $rm <$ru> by <$fu>\n");
            };
        } else {
            xnotice("Discarding in-dialog $rm <$ru> without Route header\n");
            send_reply("404", "Not found");
        };
        exit;
    };

Got this to syslog:

Apr 20 10:53:11 edge /usr/bin/edge-proxy[15624]: NOTICE: {1 2 PRACK 
HWoFVYqzNT_-3egFTTvu0Q} <script>: Discarding in-dialog PRACK 
<sip:atpsh-607eb272-3d06-1-leg1 at 46.182.160.60> without Route header

when P1 received PRACK from A (in toplogy A - P1 - P2 - P1 - B).

topos event route in P1 looks like this:

event_route[topos:msg-sending] {

  if ($mt == 1) {
    if (is_method("INVITE") && !has_totag()) {
        if ($sndto(ip) == "P2") {
	    xinfo("Setting topos leg to <leg1> on <$rm> to $sndto(ip)");
	    tps_set_context("leg1");
	} else {
	    xinfo("Setting topos leg to <leg2> on <$rm> to $sndto(ip)");
	    tps_set_context("leg2");
        };
    };
}

-- Juha



More information about the sr-users mailing list