Module: kamailio
Branch: master
Commit: 8f84f6681570d5eb1018e6fe45f280173451bf62
URL:
https://github.com/kamailio/kamailio/commit/8f84f6681570d5eb1018e6fe45f2801…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2023-11-08T11:06:53+01:00
topos: update headers for stateless cancel and non-2xx ack
---
Modified: src/modules/topos/tps_msg.c
---
Diff:
https://github.com/kamailio/kamailio/commit/8f84f6681570d5eb1018e6fe45f2801…
Patch:
https://github.com/kamailio/kamailio/commit/8f84f6681570d5eb1018e6fe45f2801…
---
diff --git a/src/modules/topos/tps_msg.c b/src/modules/topos/tps_msg.c
index 740f87b067f..0e697e8580e 100644
--- a/src/modules/topos/tps_msg.c
+++ b/src/modules/topos/tps_msg.c
@@ -1114,9 +1114,14 @@ int tps_request_sent(sip_msg_t *msg, int dialog, int local)
if(tps_get_xuuid(msg, &xuuid) < 0) {
LM_DBG("no x-uuid header - local message only - Call-ID mask if "
"downstream \n");
- /* ACK and CANCEL go downstream so Call-ID mask required */
if(get_cseq(msg)->method_id == METHOD_ACK
|| get_cseq(msg)->method_id == METHOD_CANCEL) {
+ /* cover stateless forwarding */
+ tps_remove_headers(msg, HDR_RECORDROUTE_T);
+ tps_remove_headers(msg, HDR_CONTACT_T);
+ tps_remove_headers(msg, HDR_VIA_T);
+ tps_reinsert_via(msg, &mtsd, &mtsd.x_via1);
+ /* ACK and CANCEL go downstream so Call-ID mask required */
tps_mask_callid(msg);
}
return 0;