Module: sip-router
Branch: master
Commit: 5bdee1ffe820d3e9e75898bb252d1660b4bbad60
URL: http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=5bdee1f…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: Mon Nov 21 23:52:43 2011 +0100
dialog(k): refactored dlg ref counting
- dlg pointer is no longer stored in tm callbacks parameter and ref
counting for these kind of needs was removed
- the internal id (hash entry, dlg id) is given now to tm callbacks. The
callbacks will do dlg lookup to get the structure
- there are longer-time persistent ref counting for:
* storing dlg structure in dialog hash table
* keeping dlg in timer list
* waiting for the reply of BYE to destroy dialog structure
- all the other ref countings are for short time, only for the period of
doing specific processing
- the new ref counting is safer in relation with tm callbacks and avoids
tight dependecy which may have been easily broken by future tm changes
(cherry picked from commit 9ba4ee25e32368a9c17c3f86784a52a97b748b93)
---
modules_k/dialog/dialog.c | 102 +++++++----
modules_k/dialog/dlg_db_handler.c | 8 +-
modules_k/dialog/dlg_handlers.c | 387 +++++++++++++++++++------------------
modules_k/dialog/dlg_handlers.h | 23 ++-
modules_k/dialog/dlg_hash.c | 60 +++++--
modules_k/dialog/dlg_hash.h | 73 +++++---
modules_k/dialog/dlg_profile.c | 145 ++++++---------
modules_k/dialog/dlg_profile.h | 44 ++---
modules_k/dialog/dlg_req_within.c | 12 +-
modules_k/dialog/dlg_timer.h | 8 +-
modules_k/dialog/dlg_var.c | 338 ++++++++++++++++++++++----------
modules_k/dialog/dlg_var.h | 34 ++--
12 files changed, 716 insertions(+), 518 deletions(-)
Diff: http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commitdiff;h=5bd…
THIS IS AN AUTOMATED MESSAGE, DO NOT REPLY.
The following task has a new comment added:
FS#184 - Crash if t_release() is executed after t_relay_to(), when this last returns -1
User who did this - Daniel-Constantin Mierla (miconda)
----------
I looked yesterday evening and couldn't spot it by eye. Now I could test it and does not crash. Can you get the full log with debug=3? Maybe you can get the core file as well -- run as root, with ulimit -c unlimited.
----------
More information can be found at the following URL:
http://sip-router.org/tracker/index.php?do=details&task_id=184#comment429
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 - Iñaki Baz Castillo (ibc)
Attached to Project - sip-router
Summary - Crash if t_release() is executed after t_relay_to(), when this last returns -1
Task Type - Bug Report
Category - tm
Status - Assigned
Assigned To - Andrei Pelinescu-Onciul
Operating System - All
Severity - High
Priority - Normal
Reported Version - Development
Due in Version - Undecided
Due Date - Undecided
Details - Kamailio 3.2 is crashing if t_release() is executed after t_relay_to() returns -1:
---
if ! t_relay_to() {
t_release();
}
---
Error -1 is generated in t_relay_to, in this case, when trying to reach a domainname which hasn't got a DNS record.
Here the log of the execution of t_relay_to:
ERROR: <core> [resolve.c:1540]: ERROR: sip_hostport2su: could not resolve hostname: "proxy1.jssip.net"
ERROR: tm [ut.h:318]: failed to resolve "proxy1.jssip.net"
ERROR: tm [t_fwd.c:1528]: ERROR: t_forward_nonack: failure to add branches
ERROR: tm [tm.c:1369]: ERROR: w_t_relay_to: t_relay_to failed
WARNING: script | uovyxruroybhnsy | call | t_relay(): -1 generic internal error
This is the log for the execution of t_release():
<core> [mem/q_malloc.c:457]: BUG: qm_free: freeing already freed pointer, first free: tm: h_table.c: free_cell(157) - aborting
ALERT: <core> [main.c:745]: child process 24217 exited by a signal 6
ALERT: <core> [main.c:748]: core was not generated
INFO: <core> [main.c:760]: INFO: terminating due to SIGCHLD
INFO: <core> [main.c:811]: INFO: signal 15 received
More information can be found at the following URL:
http://sip-router.org/tracker/index.php?do=details&task_id=184
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.
Hello,
development guide for Kamailio has been updated for v3.2.0 - it goes
through internal components, presenting the APIs for pkg/shm memory,
locking/synchronization, config file interpreter, database connectors,
a.s.o., as well as guiding how to write a new module. There is a section
trying to collect hints about upgrading a module developed for old
versions 1.x to newer architecture and APIs in versions 3.x.
The tutorial is available online at:
* http://asipto.com/u/kdg
A mirror is hosted at:
* http://www.kamailio.org/docs/kamailio-devel-guide/
This is the first release for v3.2, it may get adjustments in the near
future. Among the plans to add new chapters: how to write docbook
documentation; TM module API, Presence module API ...
Cheers,
Daniel
--
Daniel-Constantin Mierla -- http://www.asipto.com
Kamailio Advanced Training, Dec 5-8, Berlin: http://asipto.com/u/kathttp://linkedin.com/in/miconda -- http://twitter.com/miconda
THIS IS AN AUTOMATED MESSAGE, DO NOT REPLY.
The following task has a new comment added:
FS#173 - Double Free -- Crash/Coredump and possible security vulnerability
User who did this - Bayan Towfiq (btowfiq)
----------
will the dlgnewref also be merged?
----------
More information can be found at the following URL:
http://sip-router.org/tracker/index.php?do=details&task_id=173#comment428
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 is now closed:
FS#105 - $Ts returns wrong timestamp
User who did this - Daniel-Constantin Mierla (miconda)
Reason for closing: Fixed
More information can be found at the following URL:
http://sip-router.org/tracker/index.php?do=details&task_id=105
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#105 - $Ts returns wrong timestamp
User who did this - Daniel-Constantin Mierla (miconda)
----------
PID was added to be sure the caching of the time will not overlap for different messages (now in master, 3.2 and 3.1).
----------
More information can be found at the following URL:
http://sip-router.org/tracker/index.php?do=details&task_id=105#comment427
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.