Module: kamailio Branch: master Commit: 171553ebcac2f00a015191f36f2f228c0d3e483b URL: https://github.com/kamailio/kamailio/commit/171553ebcac2f00a015191f36f2f228c...
Author: Daniel-Constantin Mierla miconda@gmail.com Committer: Daniel-Constantin Mierla miconda@gmail.com Date: 2015-09-14T12:53:54+02:00
tm: reset async suspended flag when continuing via failure_route
- suspended transaction can be resumed automatically on timeout, without t_continue(), ending up in failure_route
---
Modified: modules/tm/t_reply.c
---
Diff: https://github.com/kamailio/kamailio/commit/171553ebcac2f00a015191f36f2f228c... Patch: https://github.com/kamailio/kamailio/commit/171553ebcac2f00a015191f36f2f228c...
---
diff --git a/modules/tm/t_reply.c b/modules/tm/t_reply.c index 8240ced..0041a4f 100644 --- a/modules/tm/t_reply.c +++ b/modules/tm/t_reply.c @@ -982,6 +982,8 @@ int run_failure_handlers(struct cell *t, struct sip_msg *rpl, * set next failure route, failure_route will not be reentered * on failure */ t->on_failure=0; + /* if continuing on timeout of a suspended transaction, reset the flag */ + t->flags &= ~T_ASYNC_SUSPENDED; if (exec_pre_script_cb(&faked_req, FAILURE_CB_TYPE)>0) { /* run a failure_route action if some was marked */ if (run_top_route(failure_rt.rlist[on_failure], &faked_req, 0)<0)