Module: kamailio Branch: master Commit: d0bfcac231ae67d683ff1c7ace2cebfdca33e0b4 URL: https://github.com/kamailio/kamailio/commit/d0bfcac231ae67d683ff1c7ace2cebfd...
Author: Daniel-Constantin Mierla miconda@gmail.com Committer: Daniel-Constantin Mierla miconda@gmail.com Date: 2025-06-06T14:28:12+02:00
uac: added fr_timeout and fr_inv_timeout to uac_req_t struct
- can be used to set the timeouts for the locally generated requests via the intermodule API functions
---
Modified: src/modules/tm/uac.c Modified: src/modules/tm/uac.h
---
Diff: https://github.com/kamailio/kamailio/commit/d0bfcac231ae67d683ff1c7ace2cebfd... Patch: https://github.com/kamailio/kamailio/commit/d0bfcac231ae67d683ff1c7ace2cebfd...
---
diff --git a/src/modules/tm/uac.c b/src/modules/tm/uac.c index 26748f4570c..2dfb218724f 100644 --- a/src/modules/tm/uac.c +++ b/src/modules/tm/uac.c @@ -517,8 +517,12 @@ static inline int t_uac_prepare( * we can't call init_new_t() because we don't have a sip msg * => we'll ignore t_set_fr() or avp timer value and will use directly the * module params fr_inv_timer and fr_timer -- andrei */ - new_cell->fr_timeout = cfg_get(tm, tm_cfg, fr_timeout); - new_cell->fr_inv_timeout = cfg_get(tm, tm_cfg, fr_inv_timeout); + new_cell->fr_timeout = (uac_r->fr_timeout > 0) + ? uac_r->fr_timeout + : cfg_get(tm, tm_cfg, fr_timeout); + new_cell->fr_inv_timeout = (uac_r->fr_inv_timeout > 0) + ? uac_r->fr_inv_timeout + : cfg_get(tm, tm_cfg, fr_inv_timeout); new_cell->end_of_life = get_ticks_raw() + lifetime; /* same as above for retransmission intervals */ new_cell->rt_t1_timeout_ms = cfg_get(tm, tm_cfg, rt_t1_timeout_ms); diff --git a/src/modules/tm/uac.h b/src/modules/tm/uac.h index 00dc32d2a5b..f35cf9f70ac 100644 --- a/src/modules/tm/uac.h +++ b/src/modules/tm/uac.h @@ -55,6 +55,8 @@ typedef struct uac_req void *cbp; str *callid; unsigned int cseqno; + unsigned int fr_timeout; + unsigned int fr_inv_timeout; } uac_req_t;
/* macro for setting the values of uac_req_t struct */