Hi,
I am trying to use t_suspend()/t_continue() multiple times on the same
transaction. Calling t_suspend() more than once works, but the second
time I call t_continue() the transaction is killed and a 500 response is
sent. It is the "if (branch == t->nr_of_outgoings)" check from the code
fragment below (from t_suspend.c:t_continue()) that results in the
transaction being killed - you can see the debug/error line I added to
determine this in the fragment.
Is using t_suspend()/t_continue() multiple times something that should
work?
Thanks,
Peter
if (t->uas.status < 200) {
/* No final reply has been sent yet.
* Check whether or not there is any pending branch.
*/
for ( branch = 0;
branch < t->nr_of_outgoings;
branch++
) {
if ((t->uac[branch].request.buffer != NULL)
&& (t->uac[branch].last_received < 200)
)
break;
}
if (branch == t->nr_of_outgoings) {
/* There is not any open branch so there is
* no chance that a final response will be
received. */
ret = 0;
LM_ERR("branch == t->nr_of_outgoings\n");
goto kill_trans;
}
}
--
Peter Dunkley
Technical Director
Crocodile RCS Ltd
Hi, the new RFC 6665 mandates that the subscription dialog is made
*after* the first NOTIFY from the UAS (rather than after the 200 to
the initial SUBSCRIBE). This means that the UAC MUST take the route
set from the *first* received NOTIFY (instead of taking it from the
200 to the initial SUBSCRIBE).
Therefore a proxy compliant with RFC 6665 MUST always add RR to
in-dialog NOTIFY requests and thus, I propose that the default SR
script file implements it.
Regards.
--
Iñaki Baz Castillo
<ibc(a)aliax.net>
Module: sip-router
Branch: master
Commit: 0f702f6e236eb0cbb238bf83a0c4ae94d7b3cad8
URL: http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=0f702f6…
Author: Anca Vamanu <anca.vamanu(a)1and1.ro>
Committer: Anca Vamanu <anca.vamanu(a)1and1.ro>
Date: Thu Jul 19 17:49:13 2012 +0300
modules_k/uac: uac_replace_from/to AUTO mode with dialog module
Added a implementation for uac_replace_from/to() that uses the dialog
module for AUTO mode. In this mode the URIs are stored as dialog
variables.
The change in tm module fixes a bug: if uac_replace_to() was called, the
URI was not changed accordingly in Cancel.
---
modules/tm/t_cancel.c | 5 +-
modules_k/dialog/dialog.c | 2 +
modules_k/dialog/dlg_load.h | 6 +
modules_k/uac/README | 111 +++++++++++-----
modules_k/uac/doc/uac_admin.xml | 68 +++++++++-
modules_k/uac/replace.c | 292 ++++++++++++++++++++++++++++++---------
modules_k/uac/uac.c | 17 ++-
7 files changed, 393 insertions(+), 108 deletions(-)
Diff: http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commitdiff;h=0f7…
>From my understand, patches are submitted to the mailing list.
--
Paul Belanger | PolyBeacon, Inc.
Jabber: paul.belanger(a)polybeacon.com | IRC: pabelanger (Freenode)
Github: https://github.com/pabelanger | Twitter: https://twitter.com/pabelanger
Hi,
I'm using the presence module and I'm quite annoying about the flood
of messages from the module. This is a trivial patch just for set the
level of that message to debug.
Thanks in advance,
Víctor
Hi!
Yesterday I tested the TLS module and noticed a few things:
- Kamailio compiled on OS/X refuse to connect to a kamailio server running a CAcert class 3 certificate.
So does Counterpath Bria and Blink. I need to figure out the difference between their class 1 and class3 certs,
unless someone here already knows.
- Even though verification is turned off (default) Kamailio refuses to use the self-signed cert created by the
install unless you have the selfsigned cert in the ca-list pem file. This is propably a bug.
- If you only want to use Kamailio as a TLS client, connecting to other servers you have to add a listen
port and a server certificate. Always. This is propably the design. To set up a connection, we base it
on an existing listen port. If that doesn't exist, Kamailio refuse to connect.
- I can't find any way to check the server certificate for the server we connect to in the routing script.
I guess the ONSEND route runs after we've selected server and transport, but before we're actually
connected (in first transaction).
The TLS module selects claim we have no TLS transport, even though ONSEND claims we have TLS
transport... The tls.peer selects seems to be designed for inbound connections, not outbound.
This is not yet a bug report, just notes for comments and for the archives :-)
/O
"A tutorial providing more information (detailed explanations and commented examples) can be found on the SIP-router web site."
I do remember a tutorial years ago. Is it still around, should we update it or remove this sentence?
/O
THIS IS AN AUTOMATED MESSAGE, DO NOT REPLY.
A new Flyspray task has been opened. Details are below.
User who did this - Stoyan Mihaylov (stoyan)
Attached to Project - sip-router
Summary - Crash on call of m_dump() - msilio module.
Task Type - Bug Report
Category - Modules kamailio
Status - Unconfirmed
Assigned To -
Operating System - Linux
Severity - Low
Priority - Normal
Reported Version - Development
Due in Version - Undecided
Due Date - Undecided
Details - My whole configuration is:
User client <-> Kamailio <-> Asterisk.
Calls and messages are going from user, to Kamailio then to Asterisk server (one or more), back to Kamailio and then to user.
When both clients are connected, then there are no problems with messages. When I am sending message to client who is not connected, then messages are stored. When client try to get stored messages, Kamailio crashes.
Currently, I cannot send logs, because I found problem, and I solved it on my servers - and I offer potential patch:
diff --git a/modules/msilo/msilo.c b/modules/msilo/msilo.c
index 209b309..4bda8fa 100644
--- a/modules/msilo/msilo.c
+++ b/modules/msilo/msilo.c
@@ -1125,8 +1125,16 @@ static int m_dump(struct sip_msg* msg, str* owner_s)
memcpy(tmp_extra_hdrs.s, extra_hdrs_str.s,
extra_hdrs_str.len);
memcpy(tmp_extra_hdrs.s+extra_hdrs_str.len,
str_vals[4].s, str_vals[4].len);
} else {
- tmp_extra_hdrs.len = 0;
- tmp_extra_hdrs.s = "";
+ tmp_extra_hdrs.len = 0;
+ if ((tmp_extra_hdrs.s = pkg_malloc(1)) == NULL)
+ {
+ LM_ERR("Out of pkg memory");
+ if (msilo_dbf.free_result(db_con, db_res) < 0)
+ LM_ERR("failed to free the
query result\n");
+ msg_list_set_flag(ml, mid, MS_MSG_ERRO);
+ goto error;
+ }
+ tmp_extra_hdrs.s[0]='\x0';
}
hdr_str.len = 1024;
if(m_build_headers(&hdr_str, str_vals[3] /*ctype*/,
Problem appear when we attempt to free tmp_extra_hdrs.s - in case when we assigned "" to it.
Although I allocate (in patch) 1 byte, I set tmp_extra_hdrs.len = 0; to avoid adding wrong headers. When I set tmp_extra_hdrs.len = 1; - I got errors processing message (but no crash of Kamailio).
This problem and patch is found in version 3.3.3 and in development version also.
More information can be found at the following URL:
http://sip-router.org/tracker/index.php?do=details&task_id=267
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.