### Description
<Sipwise Hat on>
We have a module that has tm callbacks of type TMCB_REQUEST_FWDED and it calls
uac.replace_from API. I noticed that this call was failing in a forking scenario:
First branch:
```
Nov 20 16:24:59 spce proxy[28430]: DEBUG: {1
NGCP%invite_q_forking%///1-28692(a)127.126.0.1[0]} tm [t_hooks.c:258]:
run_trans_callbacks_internal(): DBG: trans=0x7f89149cf660, callback type 16, id 0 entered
Nov 20 16:24:59 spce proxy[28430]: DEBUG: {1
NGCP%invite_q_forking%///1-28692(a)127.126.0.1[0]} pv_headers [pv_headers.c:413]:
pv_apply_headers(): xavp->name:headers.0 br_xname:headers.0 keys_count: 21
Nov 20 16:24:59 spce proxy[28430]: DEBUG: {1
NGCP%invite_q_forking%///1-28692(a)127.126.0.1[0]} pv_headers [pv_headers.c:445]:
pv_apply_headers(): replace_from[From]: sip:4311002@spce.test
Nov 20 16:24:59 spce proxy[28430]: DEBUG: {1
NGCP%invite_q_forking%///1-28692(a)127.126.0.1[0]} uac [uac.c:489]: replace_from_api():
dsp=(nil) (len=0) , uri=0x7ffde172f250 (len=21)
Nov 20 16:24:59 spce proxy[28430]: DEBUG: {1
NGCP%invite_q_forking%///1-28692(a)127.126.0.1[0]} uac [replace.c:361]: replace_uri(): uri
to replace [sip:testuser1002@spce.test]
Nov 20 16:24:59 spce proxy[28430]: DEBUG: {1
NGCP%invite_q_forking%///1-28692(a)127.126.0.1[0]} uac [replace.c:362]: replace_uri():
replacement uri is [sip:4311002@spce.test]
Nov 20 16:24:59 spce proxy[28430]: DEBUG: {1
NGCP%invite_q_forking%///1-28692(a)127.126.0.1[0]} uac [replace.c:506]: replace_uri():
encode is=<aVBYbwMxODMSLiN6KQM7LQplW2h4fiwKMBM-> len=36
Nov 20 16:24:59 spce proxy[28430]: DEBUG: {1
NGCP%invite_q_forking%///1-28692(a)127.126.0.1[0]} pv_headers [pv_headers.c:464]:
pv_apply_headers(): skip unchanged To header
```
Second branch:
```
Nov 20 16:24:59 spce proxy[28430]: DEBUG: {1
NGCP%invite_q_forking%///1-28692(a)127.126.0.1[1]} tm [t_hooks.c:258]:
run_trans_callbacks_internal(): DBG: trans=0x7f89149cf660, callback type 16, id 0 entered
Nov 20 16:24:59 spce proxy[28430]: DEBUG: {1
NGCP%invite_q_forking%///1-28692(a)127.126.0.1[1]} pv_headers [pv_headers.c:413]:
pv_apply_headers(): xavp->name:headers.1 br_xname:headers.1 keys_count: 21
Nov 20 16:24:59 spce proxy[28430]: DEBUG: {1
NGCP%invite_q_forking%///1-28692(a)127.126.0.1[1]} pv_headers [pv_headers.c:445]:
pv_apply_headers(): replace_from[From]: sip:4311002@spce.test
Nov 20 16:24:59 spce proxy[28430]: DEBUG: {1
NGCP%invite_q_forking%///1-28692(a)127.126.0.1[1]} uac [uac.c:489]: replace_from_api():
dsp=(nil) (len=0) , uri=0x7ffde172f250 (len=21)
Nov 20 16:24:59 spce proxy[28430]: ERROR: {1
NGCP%invite_q_forking%///1-28692(a)127.126.0.1[1]} uac [replace.c:267]: replace_uri():
called uac_replace_from() multiple times on the message
Nov 20 16:24:59 spce proxy[28430]: DEBUG: {1
NGCP%invite_q_forking%///1-28692(a)127.126.0.1[1]} pv_headers [pv_headers.c:464]:
pv_apply_headers(): skip unchanged To header
```
### Possible solution
allow TMCB_REQUEST_FWDED cb to be executed as BRANCH_ROUTE
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/2141