[sr-dev] git:master:e1974977: topos: handle BYE sent by callee during non connected call with provitional response sent by callee

Daniel-Constantin Mierla miconda at gmail.com
Thu Mar 10 10:43:12 CET 2022


Module: kamailio
Branch: master
Commit: e1974977a3e604996b752566d187b77da5072999
URL: https://github.com/kamailio/kamailio/commit/e1974977a3e604996b752566d187b77da5072999

Author: frederic <frederic.gaisnon at mmtt.fr>
Committer: Daniel-Constantin Mierla <miconda at gmail.com>
Date: 2022-03-10T10:43:05+01:00

topos: handle BYE sent by callee during non connected call with provitional response sent by callee
       (INVITE,180 and BYE from callee instead CANCEL)

---

Modified: src/modules/topos/tps_msg.c

---

Diff:  https://github.com/kamailio/kamailio/commit/e1974977a3e604996b752566d187b77da5072999.diff
Patch: https://github.com/kamailio/kamailio/commit/e1974977a3e604996b752566d187b77da5072999.patch

---

diff --git a/src/modules/topos/tps_msg.c b/src/modules/topos/tps_msg.c
index 854d2cdbc6..c7de5e514f 100644
--- a/src/modules/topos/tps_msg.c
+++ b/src/modules/topos/tps_msg.c
@@ -835,8 +835,9 @@ int tps_request_received(sip_msg_t *msg, int dialog)
 	if(tps_storage_load_dialog(msg, &mtsd, &stsd) < 0) {
 		goto error;
 	}
-	if(((get_cseq(msg)->method_id) & (METHOD_BYE|METHOD_PRACK|METHOD_UPDATE))
-			&& stsd.b_contact.len <= 0) {
+        if(((((get_cseq(msg)->method_id) & (METHOD_PRACK|METHOD_UPDATE))
+			&& stsd.b_contact.len <= 0)) || (((get_cseq(msg)->method_id) 
+                        & (METHOD_BYE) && stsd.b_contact.len <= 0) && (0 == dialog))) {
 		/* no B-side contact, look for INVITE transaction record */
 		if((get_cseq(msg)->method_id) & (METHOD_UPDATE)) {
 			/* detect direction - via from-tag */




More information about the sr-dev mailing list