THIS IS AN AUTOMATED MESSAGE, DO NOT REPLY.
The following task has a new comment added:
FS#496 - Dialog state changed after restart Kamailio for db_mode=REALTIME
User who did this - Daniel-Constantin Mierla (miconda)
----------
Have you restarted immediately after receiving the BYE?
IIRC, the dialog record is no longer updated for state 5 in database, it should be just removed from there.
----------
More information can be found at the following URL:
https://sip-router.org/tracker/index.php?do=details&task_id=496#comment1713
You are receiving this message because you have requested it from the Flyspray bugtracking system. If you did not expect this message or don't want to receive mails in future, you can change your notification settings at the URL shown above.
THIS IS AN AUTOMATED MESSAGE, DO NOT REPLY.
The following task has a new comment added:
FS#497 - dialplan: Reload failure
User who did this - Daniel-Constantin Mierla (miconda)
----------
To clarify, sometime it works, sometime it doesn't?
How many records have you had in database while testing this? Any errors in the logs?
----------
More information can be found at the following URL:
https://sip-router.org/tracker/index.php?do=details&task_id=497#comment1712
You are receiving this message because you have requested it from the Flyspray bugtracking system. If you did not expect this message or don't want to receive mails in future, you can change your notification settings at the URL shown above.
THIS IS AN AUTOMATED MESSAGE, DO NOT REPLY.
The following task has a new comment added:
FS#498 - tm: possible crash if trying to aapend branch on cancelled transaction
User who did this - Daniel-Constantin Mierla (miconda)
----------
It looks like it should just return E_CANCELED at that point instead of goto cancelled.
----------
More information can be found at the following URL:
https://sip-router.org/tracker/index.php?do=details&task_id=498#comment1711
You are receiving this message because you have requested it from the Flyspray bugtracking system. If you did not expect this message or don't want to receive mails in future, you can change your notification settings at the URL shown above.
THIS IS AN AUTOMATED MESSAGE, DO NOT REPLY.
A new Flyspray task has been opened. Details are below.
User who did this - Ovidiu Sas (osas)
Attached to Project - sip-router
Summary - tm: possible crash if trying to aapend branch on cancelled transaction
Task Type - Bug Report
Category - tm
Status - New
Assigned To -
Operating System - All
Severity - High
Priority - High
Reported Version - 4.2
Due in Version - Undecided
Due Date - Undecided
Details - In t_append_branches.c:t_append_branches(), if a transaction is cancelled, there is a direct jump to label "canceled":
/* test if transaction has already been canceled */
if (t->flags & T_CANCELED) goto canceled;
Inside the "canceled" label, the "orig_msg" pointer is used without being properly initialized (it is initialized by default to NULL):
/* update message flags, if changed in branch route */
t->uas.request->flags = orig_msg->flags;
More information can be found at the following URL:
http://sip-router.org/tracker/index.php?do=details&task_id=498
You are receiving this message because you have requested it from the Flyspray bugtracking system. If you did not expect this message or don't want to receive mails in future, you can change your notification settings at the URL shown above.
Module: sip-router
Branch: 4.1
Commit: 01824551d36a12a62b7bf64ee62df78a5f2d6111
URL: http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=0182455…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: Mon Dec 1 11:48:39 2014 +0100
nathelper: use dedicated function for testing via address against source ip
- reported by Igor Potjevlesch
- previous used functions was checking the presence of rport and
received parameters, ending in a wrong result for nat testing
(cherry picked from commit 0b10377df11977d7ddd7e6bf30fe060d1fe200aa)
(cherry picked from commit a2832bf95bf0fa4e866ee4a04cabe944d5374ffb)
---
modules/nathelper/nathelper.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/modules/nathelper/nathelper.c b/modules/nathelper/nathelper.c
index 9a76550..833f651 100644
--- a/modules/nathelper/nathelper.c
+++ b/modules/nathelper/nathelper.c
@@ -1567,7 +1567,7 @@ nat_uac_test_f(struct sip_msg* msg, char* str1, char* str2)
* test if source address of signaling is different from
* address advertised in Via
*/
- if ((tests & NAT_UAC_TEST_RCVD) && received_test(msg))
+ if ((tests & NAT_UAC_TEST_RCVD) && received_via_test(msg))
return 1;
/*
* test for occurrences of RFC1918 addresses in Contact
Module: sip-router
Branch: 4.1
Commit: 518b3e9c9b9fd7cd03903f69c31b95ababc31856
URL: http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=518b3e9…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: Mon Dec 1 11:47:19 2014 +0100
core: dedicated function to check Via address with source ip
- received_via_test() as alternative to received_test() which looks also
for rport and received parameters, confusing nat detection tests
(cherry picked from commit 194743bf0de92ae09fdc817e57863f6bdb159539)
(cherry picked from commit 7ebf861b27ae7e90092bc875d75772e5a1c941d5)
---
msg_translator.c | 12 +++++++++++-
msg_translator.h | 6 +++++-
2 files changed, 16 insertions(+), 2 deletions(-)
diff --git a/msg_translator.c b/msg_translator.c
index 91fa021..52aa660 100644
--- a/msg_translator.c
+++ b/msg_translator.c
@@ -251,7 +251,8 @@ static int check_via_address(struct ip_addr* ip, str *name,
}
-/* check if IP address in Via != source IP address of signaling */
+/* check if IP address in Via != source IP address of signaling,
+ * or the sender requires adding rport or received values */
int received_test( struct sip_msg *msg )
{
int rcvd;
@@ -262,6 +263,15 @@ int received_test( struct sip_msg *msg )
return rcvd;
}
+/* check if IP address in Via != source IP address of signaling */
+int received_via_test( struct sip_msg *msg )
+{
+ int rcvd;
+
+ rcvd = (check_via_address(&msg->rcv.src_ip, &msg->via1->host,
+ msg->via1->port, received_dns)!=0);
+ return rcvd;
+}
static char * warning_builder( struct sip_msg *msg, unsigned int *returned_len)
{
diff --git a/msg_translator.h b/msg_translator.h
index 4848291..54b514a 100644
--- a/msg_translator.h
+++ b/msg_translator.h
@@ -129,9 +129,13 @@ int branch_builder( unsigned int hash_index,
char* id_builder(struct sip_msg* msg, unsigned int *id_len);
-/* check if IP address in Via != source IP address of signaling */
+/* check if IP address in Via != source IP address of signaling,
+ * or the sender is asking to set the values for rport or received */
int received_test( struct sip_msg *msg );
+/* check if IP address in Via != source IP address of signaling */
+int received_via_test( struct sip_msg *msg );
+
/* builds a char* buffer from message headers without body
* first line is excluded in case of skip_first_line=1
*/
Module: sip-router
Branch: 4.2
Commit: a2832bf95bf0fa4e866ee4a04cabe944d5374ffb
URL: http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=a2832bf…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: Mon Dec 1 11:48:39 2014 +0100
nathelper: use dedicated function for testing via address against source ip
- reported by Igor Potjevlesch
- previous used functions was checking the presence of rport and
received parameters, ending in a wrong result for nat testing
(cherry picked from commit 0b10377df11977d7ddd7e6bf30fe060d1fe200aa)
---
modules/nathelper/nathelper.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/modules/nathelper/nathelper.c b/modules/nathelper/nathelper.c
index 7626ed6..0cda937 100644
--- a/modules/nathelper/nathelper.c
+++ b/modules/nathelper/nathelper.c
@@ -1556,7 +1556,7 @@ nat_uac_test_f(struct sip_msg* msg, char* str1, char* str2)
* test if source address of signaling is different from
* address advertised in Via
*/
- if ((tests & NAT_UAC_TEST_RCVD) && received_test(msg))
+ if ((tests & NAT_UAC_TEST_RCVD) && received_via_test(msg))
return 1;
/*
* test for occurrences of RFC1918 addresses in Contact
Module: sip-router
Branch: 4.2
Commit: 7ebf861b27ae7e90092bc875d75772e5a1c941d5
URL: http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=7ebf861…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: Mon Dec 1 11:47:19 2014 +0100
core: dedicated function to check Via address with source ip
- received_via_test() as alternative to received_test() which looks also
for rport and received parameters, confusing nat detection tests
(cherry picked from commit 194743bf0de92ae09fdc817e57863f6bdb159539)
---
msg_translator.c | 12 +++++++++++-
msg_translator.h | 6 +++++-
2 files changed, 16 insertions(+), 2 deletions(-)
diff --git a/msg_translator.c b/msg_translator.c
index 6f36492..df1a753 100644
--- a/msg_translator.c
+++ b/msg_translator.c
@@ -252,7 +252,8 @@ static int check_via_address(struct ip_addr* ip, str *name,
}
-/* check if IP address in Via != source IP address of signaling */
+/* check if IP address in Via != source IP address of signaling,
+ * or the sender requires adding rport or received values */
int received_test( struct sip_msg *msg )
{
int rcvd;
@@ -263,6 +264,15 @@ int received_test( struct sip_msg *msg )
return rcvd;
}
+/* check if IP address in Via != source IP address of signaling */
+int received_via_test( struct sip_msg *msg )
+{
+ int rcvd;
+
+ rcvd = (check_via_address(&msg->rcv.src_ip, &msg->via1->host,
+ msg->via1->port, received_dns)!=0);
+ return rcvd;
+}
static char * warning_builder( struct sip_msg *msg, unsigned int *returned_len)
{
diff --git a/msg_translator.h b/msg_translator.h
index a87c69b..01b5619 100644
--- a/msg_translator.h
+++ b/msg_translator.h
@@ -129,9 +129,13 @@ int branch_builder( unsigned int hash_index,
char* id_builder(struct sip_msg* msg, unsigned int *id_len);
-/* check if IP address in Via != source IP address of signaling */
+/* check if IP address in Via != source IP address of signaling,
+ * or the sender is asking to set the values for rport or received */
int received_test( struct sip_msg *msg );
+/* check if IP address in Via != source IP address of signaling */
+int received_via_test( struct sip_msg *msg );
+
/* builds a char* buffer from message headers without body
* first line is excluded in case of skip_first_line=1
*/