<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>Hello,</p>
    <p>indeed keeping route block index in unsigned it can create
      problems. I pushed a patch for it:</p>
    <p>  -
<a class="moz-txt-link-freetext" href="https://github.com/kamailio/kamailio/commit/6c557efc1b9cb8c880a05235c94780bbaf305073">https://github.com/kamailio/kamailio/commit/6c557efc1b9cb8c880a05235c94780bbaf305073</a></p>
    <p>Can you try and see if now works ok? If yes, it will be
      backported.</p>
    <p>Cheers,<br>
      Daniel<br>
    </p>
    <p><br>
    </p>
    <div class="moz-cite-prefix">On 13.02.20 13:27, David Escartin
      wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:CADvHuE-wscOdxsSP=R033MEjcxm3LjudWVXznZpdTJfhSZQULQ@mail.gmail.com">
      <meta http-equiv="content-type" content="text/html; charset=UTF-8">
      <div dir="ltr">Hello all
        <div><br>
        </div>
        <div>Testing dialog timeout event callback for kemi lua setup
          on kamailio 5.4.0-dev3 (x86_64/linux) d74157-dirty, i had some
          problems to perform the dlg timeroute behaviour the same as we
          could on native version.</div>
        <div>If i used KSR.dialog.var_sets to set
          $dlg_ctx(timeout_route), I saw that on a dialog timeout, the
          dlg_ontimeout event route was not triggered, and only the
          dialog callback was executed with evname dialog:end.
          (only executing event_route -1 on state 5)</div>
        <div>So i'm guessing that the kemi dialog var_sets is for
          $dlg_var only (¿?)</div>
        <div>Anycase, If i used KSR.pv.sets, i saw the kamailio was
          crashing</div>
        <div>.....</div>
        <div>16(5579) DEBUG: dialog [dlg_hash.c:1013]: dlg_ref_helper():
          ref dlg 0x7f9a961f5f90 with 1 -> 3<br>
          16(5579) DEBUG: dialog [dlg_handlers.c:1589]: dlg_ontimeout():
          executing route -1 on timeout<br>
          22(5645) CRITICAL: <core> [core/pass_fd.c:277]:
          receive_fd(): EOF on 8<br>
          22(5645) DEBUG: <core> [core/tcp_main.c:3762]:
          handle_ser_child(): dead child 16, pid 5579 (shutting down?)<br>
        </div>
        <div>....</div>
        <div>Adding some debug, i could see that the call was not
          attempting the kemi function of line 1598 of dlg_handlers.c,
          and was trying the code i think was for native on line 1593.</div>
        <div>We think the issue is that the toroute is defined as
          unsigned</div>
        <div>dlg_hash.h: unsigned int         toroute; /*!< index of
          route that is executed on timeout */<br>
        </div>
        <div>but after that when setting $dlg_ctx(timeout_route) with pv
          module, it tries to compare an integer being unsigned, so it's
          always true and never uses kemi</div>
        <div>with this change we made it work</div>
        <div>+                               if ((int)(dlg->toroute)
          > 0) {<br>
          +                               /*if(dlg->toroute>0) {*/<br>
        </div>
        <div>but i don't know maybe there is a better way to do it.</div>
        <div><br>
        </div>
        <div>best regards</div>
        <div>david</div>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <pre class="moz-quote-pre" wrap="">_______________________________________________
Kamailio (SER) - Development Mailing List
<a class="moz-txt-link-abbreviated" href="mailto:sr-dev@lists.kamailio.org">sr-dev@lists.kamailio.org</a>
<a class="moz-txt-link-freetext" href="https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-dev">https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-dev</a>
</pre>
    </blockquote>
    <pre class="moz-signature" cols="72">-- 
Daniel-Constantin Mierla -- <a class="moz-txt-link-abbreviated" href="http://www.asipto.com">www.asipto.com</a>
<a class="moz-txt-link-abbreviated" href="http://www.twitter.com/miconda">www.twitter.com/miconda</a> -- <a class="moz-txt-link-abbreviated" href="http://www.linkedin.com/in/miconda">www.linkedin.com/in/miconda</a>
Kamailio Advanced Training - March 9-11, 2020, Berlin - <a class="moz-txt-link-abbreviated" href="http://www.asipto.com">www.asipto.com</a>
Kamailio World Conference - April 27-29, 2020, in Berlin -- <a class="moz-txt-link-abbreviated" href="http://www.kamailioworld.com">www.kamailioworld.com</a></pre>
  </body>
</html>