[Pkg-voip-commits] r10082 - in /kamailio/trunk/debian: ./ patches/ patches/upstream/
maniac-guest at alioth.debian.org
maniac-guest at alioth.debian.org
Wed Jan 23 13:34:54 UTC 2013
Author: maniac-guest
Date: Wed Jan 23 13:34:53 2013
New Revision: 10082
URL: http://svn.debian.org/wsvn/pkg-voip/?sc=1&rev=10082
Log:
Upstream fixes
Added:
kamailio/trunk/debian/patches/upstream/0002-pv-k-Remove-read-only-empty-strings-that-might-be-at.patch
kamailio/trunk/debian/patches/upstream/0003-dialog-fix-bug-when-detect_spirals-enabled.patch
kamailio/trunk/debian/patches/upstream/0005-dialog-fix-for-is_in_profile.patch
Modified:
kamailio/trunk/debian/changelog
kamailio/trunk/debian/patches/series
Modified: kamailio/trunk/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-voip/kamailio/trunk/debian/changelog?rev=10082&op=diff
==============================================================================
--- kamailio/trunk/debian/changelog (original)
+++ kamailio/trunk/debian/changelog Wed Jan 23 13:34:53 2013
@@ -7,6 +7,7 @@
It's now included in kamailio-xml-modules.
* debian/patches/upstream:
+ removed upstream fixes for the previous release.
+ + added upstream fixes
* debian/patches:
+ removed plumb_md5.patch and plumb_md5_fixes.patch
merged upstream ( Thanks miconda )
@@ -16,7 +17,7 @@
+ remove call to dpkg-buildflags
+ do not apply hardening_flags.patch
- -- Victor Seva <linuxmaniac at torreviejawireless.org> Thu, 10 Jan 2013 10:08:53 +0100
+ -- Victor Seva <linuxmaniac at torreviejawireless.org> Wed, 23 Jan 2013 14:33:41 +0100
kamailio (3.3.0-1) unstable; urgency=low
Modified: kamailio/trunk/debian/patches/series
URL: http://svn.debian.org/wsvn/pkg-voip/kamailio/trunk/debian/patches/series?rev=10082&op=diff
==============================================================================
--- kamailio/trunk/debian/patches/series (original)
+++ kamailio/trunk/debian/patches/series Wed Jan 23 13:34:53 2013
@@ -1,4 +1,7 @@
upstream/0001-dialog-fixed-ka_timer-linking.patch
+upstream/0002-pv-k-Remove-read-only-empty-strings-that-might-be-at.patch
+upstream/0003-dialog-fix-bug-when-detect_spirals-enabled.patch
+upstream/0005-dialog-fix-for-is_in_profile.patch
no_lib64_on_64_bits.patch
no_INSTALL_file.patch
fix_export.patch
Added: kamailio/trunk/debian/patches/upstream/0002-pv-k-Remove-read-only-empty-strings-that-might-be-at.patch
URL: http://svn.debian.org/wsvn/pkg-voip/kamailio/trunk/debian/patches/upstream/0002-pv-k-Remove-read-only-empty-strings-that-might-be-at.patch?rev=10082&op=file
==============================================================================
--- kamailio/trunk/debian/patches/upstream/0002-pv-k-Remove-read-only-empty-strings-that-might-be-at.patch (added)
+++ kamailio/trunk/debian/patches/upstream/0002-pv-k-Remove-read-only-empty-strings-that-might-be-at.patch Wed Jan 23 13:34:53 2013
@@ -1,0 +1,93 @@
+From a650507c5e9c7abb1ebdf8f60768a9fbdd23c189 Mon Sep 17 00:00:00 2001
+From: Richard Fuchs <rfuchs at sipwise.com>
+Date: Wed, 9 Jan 2013 12:34:27 -0500
+Subject: [PATCH] pv(k): Remove read-only empty strings that might be
+ attempted to be written to
+
+---
+ modules_k/pv/pv_core.c | 5 +++--
+ modules_k/pv/pv_trans.c | 17 ++++++++---------
+ 2 files changed, 11 insertions(+), 11 deletions(-)
+
+diff --git a/modules_k/pv/pv_core.c b/modules_k/pv/pv_core.c
+index 370ec1a..9a98608 100644
+--- a/modules_k/pv/pv_core.c
++++ b/modules_k/pv/pv_core.c
+@@ -59,6 +59,7 @@ static str pv_uri_scheme[] = {
+ { "urn", 3 },
+ { 0, 0 }
+ };
++static char _empty_str[] = "";
+
+ int _pv_pid = 0;
+
+@@ -1779,7 +1780,7 @@ int pv_set_ruri_user(struct sip_msg* msg, pv_param_t *param,
+ memset(&act, 0, sizeof(act));
+ act.type = SET_USER_T;
+ act.val[0].type = STRING_ST;
+- act.val[0].u.string = "";
++ act.val[0].u.string = _empty_str;
+ init_run_actions_ctx(&h);
+ if (do_action(&h, &act, msg)<0)
+ {
+@@ -1872,7 +1873,7 @@ int pv_set_ruri_port(struct sip_msg* msg, pv_param_t *param,
+ memset(&act, 0, sizeof(act));
+ act.type = SET_PORT_T;
+ act.val[0].type = STRING_ST;
+- act.val[0].u.string = "";
++ act.val[0].u.string = _empty_str;
+ init_run_actions_ctx(&h);
+ if (do_action(&h, &act, msg)<0)
+ {
+diff --git a/modules_k/pv/pv_trans.c b/modules_k/pv/pv_trans.c
+index d127e76..af455eb 100644
+--- a/modules_k/pv/pv_trans.c
++++ b/modules_k/pv/pv_trans.c
+@@ -49,6 +49,12 @@
+ #include "pv_trans.h"
+
+
++static char _empty_str[] = "";
++static str _tr_empty = { _empty_str, 0 };
++static str _tr_uri = {0, 0};
++static struct sip_uri _tr_parsed_uri;
++static param_t* _tr_uri_params = NULL;
++
+ /*! transformation buffer size */
+ #define TR_BUFFER_SIZE 65536
+ #define TR_BUFFER_SLOTS 4
+@@ -384,8 +390,7 @@ int tr_eval_string(struct sip_msg *msg, tr_param_t *tp, int subtype,
+ val->rs.s = p+1;
+ val->rs.len = s-p;
+ } else {
+- val->rs.s = "";
+- val->rs.len = 0;
++ val->rs = _tr_empty;
+ }
+ } else {
+ s = val->rs.s;
+@@ -406,8 +411,7 @@ int tr_eval_string(struct sip_msg *msg, tr_param_t *tp, int subtype,
+ val->rs.s = s;
+ val->rs.len = p-s;
+ } else {
+- val->rs.s = "";
+- val->rs.len = 0;
++ val->rs = _tr_empty;
+ }
+ }
+ break;
+@@ -748,11 +752,6 @@ int tr_eval_string(struct sip_msg *msg, tr_param_t *tp, int subtype,
+ return 0;
+ }
+
+-static str _tr_empty = { "", 0 };
+-static str _tr_uri = {0, 0};
+-static struct sip_uri _tr_parsed_uri;
+-static param_t* _tr_uri_params = NULL;
+-
+
+ /*!
+ * \brief Evaluate URI transformations
+--
+1.7.9.5
+
Added: kamailio/trunk/debian/patches/upstream/0003-dialog-fix-bug-when-detect_spirals-enabled.patch
URL: http://svn.debian.org/wsvn/pkg-voip/kamailio/trunk/debian/patches/upstream/0003-dialog-fix-bug-when-detect_spirals-enabled.patch?rev=10082&op=file
==============================================================================
--- kamailio/trunk/debian/patches/upstream/0003-dialog-fix-bug-when-detect_spirals-enabled.patch (added)
+++ kamailio/trunk/debian/patches/upstream/0003-dialog-fix-bug-when-detect_spirals-enabled.patch Wed Jan 23 13:34:53 2013
@@ -1,0 +1,57 @@
+From b1398b2faa5a01b652a8c265b93c4846e35f97d9 Mon Sep 17 00:00:00 2001
+From: Anca Vamanu <anca.vamanu at 1and1.ro>
+Date: Fri, 11 Jan 2013 11:07:45 +0200
+Subject: [PATCH] dialog: fix bug when detect_spirals enabled
+
+If detect_spirals enabled and the caller sent an Invite which received a
+negative response and then immediately sent another Invite with the
+same callid and tag, the module did not create a dialog record for the
+second Invite. It wrongly concluded that the Invite is spiraled. This
+resulted in missing CDR for that call.
+Behavior observed if the first Invite has a small Session-Timer interval
+and receives a 422 reply. When the phone sent the second Invite with a
+larger Session-Timer, which could have been successful, it was not recorded
+by the dialog module.
+(cherry picked from commit 5a78a8b8ec104550a37d8e2ae9005bf87d21e00f)
+---
+ modules_k/dialog/dlg_handlers.c | 24 ++++++++++++++----------
+ 1 file changed, 14 insertions(+), 10 deletions(-)
+
+diff --git a/modules_k/dialog/dlg_handlers.c b/modules_k/dialog/dlg_handlers.c
+index b350ba7..f98f36b 100644
+--- a/modules_k/dialog/dlg_handlers.c
++++ b/modules_k/dialog/dlg_handlers.c
+@@ -805,16 +805,20 @@ int dlg_new_dialog(sip_msg_t *req, struct cell *t, const int run_initial_cbs)
+ dlg = get_dlg(&callid, &ftag, &ttag, &dir);
+ if (dlg)
+ {
+- LM_DBG("Callid '%.*s' found, must be a spiraled request\n",
+- callid.len, callid.s);
+- spiral_detected = 1;
+-
+- if (run_initial_cbs)
+- run_dlg_callbacks( DLGCB_SPIRALED, dlg, req, NULL,
+- DLG_DIR_DOWNSTREAM, 0);
+- /* get_dlg() has incremented the ref count by 1
+- * - it's ok, dlg will be unref at the end of function */
+- goto finish;
++ if ( dlg->state != DLG_STATE_DELETED )
++ {
++ LM_DBG("Callid '%.*s' found, must be a spiraled request\n",
++ callid.len, callid.s);
++ spiral_detected = 1;
++
++ if (run_initial_cbs)
++ run_dlg_callbacks( DLGCB_SPIRALED, dlg, req, NULL,
++ DLG_DIR_DOWNSTREAM, 0);
++ /* get_dlg() has incremented the ref count by 1
++ * - it's ok, dlg will be unref at the end of function */
++ goto finish;
++ }
++ dlg_release(dlg);
+ }
+ }
+ spiral_detected = 0;
+--
+1.7.9.5
+
Added: kamailio/trunk/debian/patches/upstream/0005-dialog-fix-for-is_in_profile.patch
URL: http://svn.debian.org/wsvn/pkg-voip/kamailio/trunk/debian/patches/upstream/0005-dialog-fix-for-is_in_profile.patch?rev=10082&op=file
==============================================================================
--- kamailio/trunk/debian/patches/upstream/0005-dialog-fix-for-is_in_profile.patch (added)
+++ kamailio/trunk/debian/patches/upstream/0005-dialog-fix-for-is_in_profile.patch Wed Jan 23 13:34:53 2013
@@ -1,0 +1,56 @@
+From a1502e5ca1470276ca6d7c82956fee9a5390348b Mon Sep 17 00:00:00 2001
+From: Daniel-Constantin Mierla <miconda at gmail.com>
+Date: Wed, 16 Jan 2013 22:37:08 +0100
+Subject: [PATCH] dialog: fix for is_in_profile()
+
+- function was broken, reported by Klaus Darilion
+(cherry picked from commit 83eafc8d8f767f4705d5f76ad0ffd4349a06c927)
+---
+ modules_k/dialog/dlg_profile.c | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/modules_k/dialog/dlg_profile.c b/modules_k/dialog/dlg_profile.c
+index 3317216..370f370 100644
+--- a/modules_k/dialog/dlg_profile.c
++++ b/modules_k/dialog/dlg_profile.c
+@@ -613,6 +613,7 @@ int is_dlg_in_profile(struct sip_msg *msg, struct dlg_profile_table *profile,
+ struct dlg_cell *dlg;
+ struct dlg_profile_link *linker;
+ struct dlg_entry *d_entry;
++ int ret;
+
+ /* get current dialog */
+ dlg = dlg_get_msg_dialog(msg);
+@@ -620,6 +621,7 @@ int is_dlg_in_profile(struct sip_msg *msg, struct dlg_profile_table *profile,
+ if (dlg==NULL)
+ return -1;
+
++ ret = -1;
+ /* check the dialog linkers */
+ d_entry = &d_table->entries[dlg->h_entry];
+ dlg_lock( d_table, d_entry);
+@@ -627,10 +629,12 @@ int is_dlg_in_profile(struct sip_msg *msg, struct dlg_profile_table *profile,
+ if (linker->profile==profile) {
+ if (profile->has_value==0) {
+ dlg_unlock( d_table, d_entry);
++ ret = 1;
+ goto done;
+ } else if (value && value->len==linker->hash_linker.value.len &&
+ memcmp(value->s,linker->hash_linker.value.s,value->len)==0){
+ dlg_unlock( d_table, d_entry);
++ ret = 1;
+ goto done;
+ }
+ /* allow further search - maybe the dialog is inserted twice in
+@@ -642,7 +646,7 @@ int is_dlg_in_profile(struct sip_msg *msg, struct dlg_profile_table *profile,
+
+ done:
+ dlg_release(dlg);
+- return -1;
++ return ret;
+ }
+
+
+--
+1.7.9.5
+
More information about the Pkg-voip-commits
mailing list