[sr-dev] git:master:24a3a172: core: do not use tcp id for lookup if not needed

Donato Sciarra donato.sciarra at bmw.de
Tue Apr 28 15:57:36 CEST 2020


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

Author: Donato Sciarra <donato.sciarra at bmw.de>
Committer: Donato Sciarra <donato.sciarra at bmw.de>
Date: 2020-04-28T10:33:23+02:00

core: do not use tcp id for lookup if not needed

In case the first lookup (with tcp id) is not successfull, the second
attempt should have been performed without a tcp id.
Issue was introduced with dc43750644 (new global parameter
tcp_connection_match) in 5.3.

---

Modified: src/core/tcp_main.c

---

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

---

diff --git a/src/core/tcp_main.c b/src/core/tcp_main.c
index e57a29d99e..89e3b56b7c 100644
--- a/src/core/tcp_main.c
+++ b/src/core/tcp_main.c
@@ -1967,7 +1967,7 @@ int tcp_send(struct dest_info* dst, union sockaddr_union* from,
 			if (likely(port)){
 				/* try again w/o id */
 				if(tcp_connection_match==TCPCONN_MATCH_STRICT) {
-					c=tcpconn_lookup(dst->id, &ip, port, from, try_local_port, con_lifetime);
+					c=tcpconn_lookup(0, &ip, port, from, try_local_port, con_lifetime);
 				} else {
 					c=tcpconn_get(0, &ip, port, from, con_lifetime);
 				}




More information about the sr-dev mailing list