Hi,

on one of our systems we are checking a few times whether a
transaction already exists. We noticed that route execution stops if
the transaction is found. And after looking into the code, we found
that it seems to be intended like this.

From tm.c:
        int t_check_trans(struct sip_msg* msg)
        {
                if (msg->first_line.type==SIP_REPLY) {
               [..]
                } else {
                        switch(t_check_msg(msg, 0)){
                                [..]
                                case 1: /* found */
                                       [..]
                                       return 0; /* exit from the script */
                        }
                }
        }

Can anybody explain, why script execution should stop when a running
transaction is found? I would expect that then the function returns 1
so I can use it in my if statement and continue with my routing
script.

Thanks already for an explanation,
Sebastian

_______________________________________________
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

Reply via email to