[SR-Users] t_check_trans() exits route execution if transaction is found
Sebastian Damm
damm at sipgate.de
Thu Jul 7 09:59:12 CEST 2016
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
More information about the sr-users
mailing list