Module: sip-router
Branch: master
Commit: e973bbe5e7310861f77b17ce0afaf1cca35fe48a
URL: http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=e973bbe…
Author: Juha Heinanen <jh(a)tutpro.com>
Committer: Juha Heinanen <jh(a)tutpro.com>
Date: Fri May 28 15:38:41 2010 +0300
modules/tm: new implementation of load_contacts()/next_contacts()
- Simpler implementation of load_contacts()/next_contacts() functions
based on recent changes related to Request-URI handling.
- Function next_contacts() does not anymore set any timers. Check
contact_avp and call t_set_fr() before calling t_relay() instead.
- Removed fr_timer_next module parameter, because it is not needed
anymore.
---
modules/tm/README | 255 ++++++++++++++------------------------
modules/tm/doc/functions.xml | 51 +++-----
modules/tm/doc/params.xml | 73 -----------
modules/tm/doc/tm.xml | 15 +--
modules/tm/t_serial.c | 279 ++++++++++++------------------------------
modules/tm/tm.c | 1 -
6 files changed, 190 insertions(+), 484 deletions(-)
Diff: http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commitdiff;h=e97…
Hi, "sip:alice@domain.org" is registered in Kamailio. If the proxy
receives a request for "sips:alice@domain.org" and invokes
"lookup(location)" the function doesn't retrieve the registration of
alice. But it should:
RFC 5630 section 3.3:
When used as the Request-URI of a request, the SIPS scheme
signifies that each hop over which the request is forwarded, until
the request reaches the SIP entity responsible for the domain
portion of the Request-URI, must be secured with TLS; once it
reaches the domain in question it is handled in accordance with
local security and routing policy, quite possibly using TLS for
any last hop to a UAS. When used by the originator of a request
(as would be the case if they employed a SIPS URI as the address-
of-record of the target), SIPS dictates that the entire request
path to the target domain be so secured.
Note the last phrase:
When used by the originator of a request
(as would be the case if they employed a SIPS URI as the address-
of-record of the target), SIPS dictates that the entire request
path to the target domain be so secured.
This is, the entire path *until* the proxy responsible for the domain
in the RURI must be secure (TLS) but it's not required (local policy)
that the destination proxy dellivers the request to the destination
user using TLS.
So IMHO lockup(location) should not inspect the registration schema. Am I wrong?
--
Iñaki Baz Castillo
<ibc(a)aliax.net>
i understood that module functions can now have an arbitrary number of
string, int and pseudo var arguments, where string arguments can
possibly also contain pseudo variables.
some time ago i asked an example on how this is done, but didn't get any
reply. so i'll try again. for example, allow_trusted function is
now defined like this:
{"allow_trusted", (cmd_function)allow_trusted_2, 2, fixup_pvar_pvar,
fixup_free_pvar_pvar, REQUEST_ROUTE | FAILURE_ROUTE},
how can i add a third argument to the function without needing to define
yet another fixup_pvar_pvar_something?
-- juha
i have tried to enable sctp by including in debian/rules
SCTP=1
and by including SCTP=$(SCTP) in make params.
in cfg file, i have
enable_sctp=1
but when i start sr, it does not report listening on sctp, only udp,
tcp, and tls.
i have not found anything about sctp in sr README/INSTALL etc files in
source dir.
question: how to enable sctp?
-- juha
THIS IS AN AUTOMATED MESSAGE, DO NOT REPLY.
A new Flyspray task has been opened. Details are below.
User who did this - Bayan (bayan)
Attached to Project - sip-router
Summary - segfault on loading dialplan module 3.1.1
Task Type - Bug Report
Category - Module
Status - Unconfirmed
Assigned To -
Operating System - Linux
Severity - High
Priority - Normal
Reported Version - 3.1
Due in Version - Undecided
Due Date - Undecided
Details - Version 3.1.1 segfaults on loading dialplan when loading a row with match_op 1. When the match mode was changed to 0 it works
To isolate the bug we loaded kamailio dialplan module with the very simple match_op 1 regex row in the database (Postgres) and took a backtrace of the segfault.
# select * from coreout_dialplan;
id | dpid | pr | match_op | match_exp | match_len | subst_exp | repl_exp | attrs
-----+------+----+----------+-----------+-----------+-----------+----------+-------
482 | 100 | 1 | 1 | ^201$ | 0 | | NJ |
Backtrace is below:
Program terminated with signal 11, Segmentation fault.
#0 0x00007f435151e5da in build_rule (values=0x0) at dp_db.c:388
388 GET_STR_VALUE(repl_exp, values, 6);
(gdb) bt
#0 0x00007f435151e5da in build_rule (values=0x0) at dp_db.c:388
#1 0x00007f435151fb1f in dp_load_db () at dp_db.c:261
#2 0x00007f4351520182 in init_db_data () at dp_db.c:110
#3 0x00007f43515205f5 in init_data () at dp_db.c:176
#4 0x00007f435151b15d in mod_init () at dialplan.c:189
#5 0x00000000004db076 in init_mod (m=0x8fb170) at sr_module.c:872
#6 0x00000000004daff4 in init_mod (m=0x8fb570) at sr_module.c:869
#7 0x00000000004dc022 in init_modules () at sr_module.c:899
#8 0x0000000000463ec9 in main (argc=5845616, argv=0x7fff86a4ac18) at main.c:2339
(gdb) p repl_exp
$1 = {s = 0x4 <Address 0x4 out of bounds>, len = 1366451880}
(gdb) p values
$2 = (db_val_t *) 0x0
More information can be found at the following URL:
http://sip-router.org/tracker/index.php?do=details&task_id=109
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.
Hi, when Kamailio/SER parses a number (like Content-Length value) I
assume it doesn't use atoi() or strol() C core functions as they are
too much flexible (allow negative values, hexadecimal notation) and
worse: they search until a char is not suitable for an integer/long. A
bit dangerous as when parsing a stream we don't know if the next
position in memory contains a digit or not.
So could I be pointed to the exact function in Kamailio/SER code
converting the Content-Length string value (pointer + lentgh) to an
integer?
Thanks a lot.
--
Iñaki Baz Castillo
<ibc(a)aliax.net>