[Pkg-voip-commits] r9925 - in /kamailio/trunk/debian/patches: ./ upstream/
maniac-guest at alioth.debian.org
maniac-guest at alioth.debian.org
Thu Aug 2 06:37:38 UTC 2012
Author: maniac-guest
Date: Thu Aug 2 06:37:37 2012
New Revision: 9925
URL: http://svn.debian.org/wsvn/pkg-voip/?sc=1&rev=9925
Log:
upstream fixes
Added:
kamailio/trunk/debian/patches/upstream/0016-dispatcher-k-allow-set-id-0-for-OPTIONS-callback.patch
kamailio/trunk/debian/patches/upstream/0017-p_usrloc-added-missing-usrloc-API-members.patch
kamailio/trunk/debian/patches/upstream/0018-kamailio.cfg-removed-sample-db_mode-parameter-for-do.patch
kamailio/trunk/debian/patches/upstream/0019-kamdbctl-mtree-tables-were-not-in-the-list-for-db-cr.patch
kamailio/trunk/debian/patches/upstream/0020-tls-set-function-to-return-the-id.patch
kamailio/trunk/debian/patches/upstream/0021-usrloc-k-on-ul-update-re-clone-uri-and-callid-if-ins.patch
kamailio/trunk/debian/patches/upstream/0022-register-k-pack-contact-info-based-on-header-for-sea.patch
Modified:
kamailio/trunk/debian/patches/series
Modified: kamailio/trunk/debian/patches/series
URL: http://svn.debian.org/wsvn/pkg-voip/kamailio/trunk/debian/patches/series?rev=9925&op=diff
==============================================================================
--- kamailio/trunk/debian/patches/series (original)
+++ kamailio/trunk/debian/patches/series Thu Aug 2 06:37:37 2012
@@ -10,6 +10,13 @@
upstream/0012-Remove-duplicate-entry-of-default_domain-in-docs.patch
upstream/0013-modules-matrix-Fixed-MI-command-not-exported.patch
upstream/0014-modules-lcr-Fix-printing-of-IPv4-addresses-in-lcr.du.patch
+upstream/0016-dispatcher-k-allow-set-id-0-for-OPTIONS-callback.patch
+upstream/0017-p_usrloc-added-missing-usrloc-API-members.patch
+upstream/0018-kamailio.cfg-removed-sample-db_mode-parameter-for-do.patch
+upstream/0019-kamdbctl-mtree-tables-were-not-in-the-list-for-db-cr.patch
+upstream/0020-tls-set-function-to-return-the-id.patch
+upstream/0021-usrloc-k-on-ul-update-re-clone-uri-and-callid-if-ins.patch
+upstream/0022-register-k-pack-contact-info-based-on-header-for-sea.patch
multiarch_support.patch
no_INSTALL_file.patch
hardening_flags.patch
Added: kamailio/trunk/debian/patches/upstream/0016-dispatcher-k-allow-set-id-0-for-OPTIONS-callback.patch
URL: http://svn.debian.org/wsvn/pkg-voip/kamailio/trunk/debian/patches/upstream/0016-dispatcher-k-allow-set-id-0-for-OPTIONS-callback.patch?rev=9925&op=file
==============================================================================
--- kamailio/trunk/debian/patches/upstream/0016-dispatcher-k-allow-set-id-0-for-OPTIONS-callback.patch (added)
+++ kamailio/trunk/debian/patches/upstream/0016-dispatcher-k-allow-set-id-0-for-OPTIONS-callback.patch Thu Aug 2 06:37:37 2012
@@ -1,0 +1,32 @@
+From 81149e30785aa1cc6f04e130afafb643d9163cce Mon Sep 17 00:00:00 2001
+From: Daniel-Constantin Mierla <miconda at gmail.com>
+Date: Mon, 25 Jun 2012 10:36:31 +0200
+Subject: [PATCH] dispatcher(k): allow set id 0 for OPTIONS callback
+
+- set id is provided in param pointer address, 0 being equivalent to
+ NULL
+- reported by Avi Brender
+(cherry picked from commit 2664cb9aa8ffd5d26ef6a0841318ccbcdefbf69b)
+---
+ modules_k/dispatcher/dispatch.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/modules_k/dispatcher/dispatch.c b/modules_k/dispatcher/dispatch.c
+index a60401c..7429e97 100644
+--- a/modules_k/dispatcher/dispatch.c
++++ b/modules_k/dispatcher/dispatch.c
+@@ -2326,9 +2326,9 @@ static void ds_options_callback( struct cell *t, int type,
+ sip_msg_t *fmsg;
+ int state;
+
+- /* The Param does contain the group, in which the failed host
++ /* The param contains the group, in which the failed host
+ * can be found.*/
+- if (!*ps->param)
++ if (ps->param==NULL)
+ {
+ LM_DBG("No parameter provided, OPTIONS-Request was finished"
+ " with code %d\n", ps->code);
+--
+1.7.9.5
+
Added: kamailio/trunk/debian/patches/upstream/0017-p_usrloc-added-missing-usrloc-API-members.patch
URL: http://svn.debian.org/wsvn/pkg-voip/kamailio/trunk/debian/patches/upstream/0017-p_usrloc-added-missing-usrloc-API-members.patch?rev=9925&op=file
==============================================================================
--- kamailio/trunk/debian/patches/upstream/0017-p_usrloc-added-missing-usrloc-API-members.patch (added)
+++ kamailio/trunk/debian/patches/upstream/0017-p_usrloc-added-missing-usrloc-API-members.patch Thu Aug 2 06:37:37 2012
@@ -1,0 +1,43 @@
+From fe8265334cef872d8f3fabe407d3f3d744a45960 Mon Sep 17 00:00:00 2001
+From: Daniel-Constantin Mierla <miconda at gmail.com>
+Date: Thu, 28 Jun 2012 16:24:47 +0200
+Subject: [PATCH] p_usrloc: added missing usrloc API members
+
+- they are set to NULL to get a clean crash, they have to be implemented
+- the missing API members are the functions introduced in 3.3 for
+ handling SIP GRUU and Outbound extensions
+- a proper fix to follow
+- reported by Dan Bogos
+(cherry picked from commit f030b2f274b69526f256e66098de72a074000ed1)
+---
+ modules_k/p_usrloc/usrloc.c | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/modules_k/p_usrloc/usrloc.c b/modules_k/p_usrloc/usrloc.c
+index 3a1b4fc..b268052 100644
+--- a/modules_k/p_usrloc/usrloc.c
++++ b/modules_k/p_usrloc/usrloc.c
+@@ -65,6 +65,8 @@ int bind_usrloc(usrloc_api_t* api)
+ return -1;
+ }
+
++ memset(api, 0, sizeof(usrloc_api_t));
++
+ api->register_udomain = register_udomain;
+ api->get_all_ucontacts = get_all_ucontacts;
+ api->insert_urecord = insert_urecord;
+@@ -79,6 +81,11 @@ int bind_usrloc(usrloc_api_t* api)
+ api->update_ucontact = update_ucontact;
+ api->register_ulcb = register_ulcb;
+
++ api->get_udomain = 0;
++ api->get_urecord_by_ruid = 0;
++ api->get_ucontact_by_instance = 0;
++ api->get_aorhash = 0;
++
+ api->use_domain = use_domain;
+ api->db_mode = db_mode;
+ api->nat_flag = nat_bflag;
+--
+1.7.9.5
+
Added: kamailio/trunk/debian/patches/upstream/0018-kamailio.cfg-removed-sample-db_mode-parameter-for-do.patch
URL: http://svn.debian.org/wsvn/pkg-voip/kamailio/trunk/debian/patches/upstream/0018-kamailio.cfg-removed-sample-db_mode-parameter-for-do.patch?rev=9925&op=file
==============================================================================
--- kamailio/trunk/debian/patches/upstream/0018-kamailio.cfg-removed-sample-db_mode-parameter-for-do.patch (added)
+++ kamailio/trunk/debian/patches/upstream/0018-kamailio.cfg-removed-sample-db_mode-parameter-for-do.patch Thu Aug 2 06:37:37 2012
@@ -1,0 +1,28 @@
+From 87618b2f1c5d6e3724c3935709b81b151c4645b5 Mon Sep 17 00:00:00 2001
+From: Daniel-Constantin Mierla <miconda at gmail.com>
+Date: Wed, 18 Jul 2012 08:27:52 +0200
+Subject: [PATCH] kamailio.cfg: removed sample db_mode parameter for domain
+ module
+
+- no longer exists since 3.3 domain update
+(cherry picked from commit bb4925540d241eb91cc8b68712bec20f1970b086)
+---
+ etc/kamailio.cfg | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/etc/kamailio.cfg b/etc/kamailio.cfg
+index 158b525..f8b375c 100644
+--- a/etc/kamailio.cfg
++++ b/etc/kamailio.cfg
+@@ -380,8 +380,6 @@ modparam("speeddial", "use_domain", MULTIDOMAIN)
+ # ----- domain params -----
+ #!ifdef WITH_MULTIDOMAIN
+ modparam("domain", "db_url", DBURL)
+-# use caching
+-modparam("domain", "db_mode", 1)
+ # register callback to match myself condition with domains list
+ modparam("domain", "register_myself", 1)
+ #!endif
+--
+1.7.9.5
+
Added: kamailio/trunk/debian/patches/upstream/0019-kamdbctl-mtree-tables-were-not-in-the-list-for-db-cr.patch
URL: http://svn.debian.org/wsvn/pkg-voip/kamailio/trunk/debian/patches/upstream/0019-kamdbctl-mtree-tables-were-not-in-the-list-for-db-cr.patch?rev=9925&op=file
==============================================================================
--- kamailio/trunk/debian/patches/upstream/0019-kamdbctl-mtree-tables-were-not-in-the-list-for-db-cr.patch (added)
+++ kamailio/trunk/debian/patches/upstream/0019-kamdbctl-mtree-tables-were-not-in-the-list-for-db-cr.patch Thu Aug 2 06:37:37 2012
@@ -1,0 +1,36 @@
+From cd50811c1964e4e2227e45ffcb4e5e1f0db04745 Mon Sep 17 00:00:00 2001
+From: Daniel-Constantin Mierla <miconda at gmail.com>
+Date: Wed, 18 Jul 2012 18:51:54 +0200
+Subject: [PATCH] kamdbctl: mtree tables were not in the list for db creation
+ (cherry picked from commit
+ e35e16efbbc6c746a7a4dfeddfc241c2c78d30bc)
+
+---
+ utils/kamctl/kamdbctl.base | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/utils/kamctl/kamdbctl.base b/utils/kamctl/kamdbctl.base
+index c8a78fa..59bc2e7 100644
+--- a/utils/kamctl/kamdbctl.base
++++ b/utils/kamctl/kamdbctl.base
+@@ -38,7 +38,7 @@ STANDARD_TABLES=${STANDARD_TABLES:-version acc dbaliases domain domain_attrs grp
+ aliases silo dialog dialog_vars dispatcher dialplan}
+ EXTRA_TABLES=${EXTRA_TABLES:-imc_members imc_rooms cpl sip_trace domainpolicy
+ carrierroute carrier_name domain_name carrierfailureroute userblacklist
+- globalblacklist htable purplemap uacreg pl_pipes}
++ globalblacklist htable purplemap uacreg pl_pipes mtree mtrees}
+ PRESENCE_TABLES=${PRESENCE_TABLES:-presentity active_watchers watchers xcap
+ pua rls_presentity rls_watchers}
+
+@@ -67,7 +67,7 @@ STANDARD_MODULES=${STANDARD_MODULES:-standard acc lcr domain group permissions
+ speeddial avpops auth_db pdt dialog dispatcher
+ dialplan}
+ EXTRA_MODULES=${EXTRA_MODULES:-imc cpl siptrace domainpolicy carrierroute
+- userblacklist htable purple uac pipelimit}
++ userblacklist htable purple uac pipelimit mtree}
+
+ ############################################################
+
+--
+1.7.9.5
+
Added: kamailio/trunk/debian/patches/upstream/0020-tls-set-function-to-return-the-id.patch
URL: http://svn.debian.org/wsvn/pkg-voip/kamailio/trunk/debian/patches/upstream/0020-tls-set-function-to-return-the-id.patch?rev=9925&op=file
==============================================================================
--- kamailio/trunk/debian/patches/upstream/0020-tls-set-function-to-return-the-id.patch (added)
+++ kamailio/trunk/debian/patches/upstream/0020-tls-set-function-to-return-the-id.patch Thu Aug 2 06:37:37 2012
@@ -1,0 +1,50 @@
+From 5f8405f577d66069fde48202862f06cac432139b Mon Sep 17 00:00:00 2001
+From: Daniel-Constantin Mierla <miconda at gmail.com>
+Date: Wed, 18 Jul 2012 19:00:38 +0200
+Subject: [PATCH] tls: set function to return the id
+
+- starting with v1.0.0 openssl does not use anymore getpid(), but address
+ of errno which can point to same virtual address in a multi-process
+ application
+- for refrence http://www.openssl.org/docs/crypto/threads.html
+- credits to Jijo on sr-dev mailing list
+(cherry picked from commit 0615826fe602c5183fbc7be7c51de5eb5eb7223c)
+---
+ modules/tls/tls_locking.c | 13 ++++++++++---
+ 1 file changed, 10 insertions(+), 3 deletions(-)
+
+diff --git a/modules/tls/tls_locking.c b/modules/tls/tls_locking.c
+index 86bda17..d85b14c 100644
+--- a/modules/tls/tls_locking.c
++++ b/modules/tls/tls_locking.c
+@@ -130,6 +130,10 @@ void tls_destroy_locks()
+ }
+
+
++unsigned long sr_ssl_id_f()
++{
++ return my_pid();
++}
+
+ /* returns -1 on error, 0 on success */
+ int tls_init_locks()
+@@ -163,10 +167,13 @@ int tls_init_locks()
+ CRYPTO_set_dynlock_lock_callback(dyn_lock_f);
+ CRYPTO_set_dynlock_destroy_callback(dyn_destroy_f);
+
+- /* thread id callback: not needed because ser doesn't use thread and
+- * openssl already uses getpid() (by default)
+- * CRYPTO_set_id_callback(id_f);
++ /* starting with v1.0.0 openssl does not use anymore getpid(), but address
++ * of errno which can point to same virtual address in a multi-process
++ * application
++ * - for refrence http://www.openssl.org/docs/crypto/threads.html
+ */
++ CRYPTO_set_id_callback(sr_ssl_id_f);
++
+ /* atomic add -- since for now we don't have atomic_add
+ * (only atomic_inc), fallback to the default use-locks mode
+ * CRYPTO_set_add_lock_callback(atomic_add_f);
+--
+1.7.9.5
+
Added: kamailio/trunk/debian/patches/upstream/0021-usrloc-k-on-ul-update-re-clone-uri-and-callid-if-ins.patch
URL: http://svn.debian.org/wsvn/pkg-voip/kamailio/trunk/debian/patches/upstream/0021-usrloc-k-on-ul-update-re-clone-uri-and-callid-if-ins.patch?rev=9925&op=file
==============================================================================
--- kamailio/trunk/debian/patches/upstream/0021-usrloc-k-on-ul-update-re-clone-uri-and-callid-if-ins.patch (added)
+++ kamailio/trunk/debian/patches/upstream/0021-usrloc-k-on-ul-update-re-clone-uri-and-callid-if-ins.patch Thu Aug 2 06:37:37 2012
@@ -1,0 +1,51 @@
+From b5b534ec77634041d0ed11280241a947b61aff0c Mon Sep 17 00:00:00 2001
+From: Daniel-Constantin Mierla <miconda at gmail.com>
+Date: Mon, 30 Jul 2012 12:55:36 +0200
+Subject: [PATCH] usrloc(k): on ul update, re-clone uri and callid if instance
+ is set
+
+- changes can happen when gruu/ob is enabled as the UA can get different
+ address for same instance
+(cherry picked from commit a7cad776a514b0ec73a5c40b7971af8e0f0da92b)
+---
+ modules_k/usrloc/ucontact.c | 11 ++++++++---
+ modules_k/usrloc/usrloc.h | 1 +
+ 2 files changed, 9 insertions(+), 3 deletions(-)
+
+diff --git a/modules_k/usrloc/ucontact.c b/modules_k/usrloc/ucontact.c
+index 2d07a26..ac76e9b 100644
+--- a/modules_k/usrloc/ucontact.c
++++ b/modules_k/usrloc/ucontact.c
+@@ -218,9 +218,14 @@ int mem_update_ucontact(ucontact_t* _c, ucontact_info_t* _ci)
+
+ char* ptr;
+
+- /* No need to update Callid as it is constant
+- * per ucontact (set at insert time) -bogdan */
+-
++ if(_ci->instance.s!=NULL && _ci->instance.len>0)
++ {
++ /* when we have instance set, update contact address and call-id */
++ if(_ci->c!=NULL && _ci->c->s!=NULL && _ci->c->len>0)
++ update_str( &_c->c, _ci->c);
++ if(_ci->callid!=NULL && _ci->callid->s!=NULL && _ci->callid->len>0)
++ update_str( &_c->callid, _ci->callid);
++ }
+ update_str( &_c->user_agent, _ci->user_agent);
+
+ if (_ci->received.s && _ci->received.len) {
+diff --git a/modules_k/usrloc/usrloc.h b/modules_k/usrloc/usrloc.h
+index d08632b..bfd225a 100644
+--- a/modules_k/usrloc/usrloc.h
++++ b/modules_k/usrloc/usrloc.h
+@@ -94,6 +94,7 @@ typedef struct ucontact {
+ /*! \brief Informations related to a contact */
+ typedef struct ucontact_info {
+ str ruid; /*!< Pointer to record internal unique id */
++ str *c; /*!< Contact address */
+ str received; /*!< Received interface */
+ str* path; /*!< Path informations */
+ time_t expires; /*!< Contact expires */
+--
+1.7.9.5
+
Added: kamailio/trunk/debian/patches/upstream/0022-register-k-pack-contact-info-based-on-header-for-sea.patch
URL: http://svn.debian.org/wsvn/pkg-voip/kamailio/trunk/debian/patches/upstream/0022-register-k-pack-contact-info-based-on-header-for-sea.patch?rev=9925&op=file
==============================================================================
--- kamailio/trunk/debian/patches/upstream/0022-register-k-pack-contact-info-based-on-header-for-sea.patch (added)
+++ kamailio/trunk/debian/patches/upstream/0022-register-k-pack-contact-info-based-on-header-for-sea.patch Thu Aug 2 06:37:37 2012
@@ -1,0 +1,75 @@
+From 153baccb8bbbcf08b6485f1cfc75a2b809bdafca Mon Sep 17 00:00:00 2001
+From: Daniel-Constantin Mierla <miconda at gmail.com>
+Date: Mon, 30 Jul 2012 12:57:09 +0200
+Subject: [PATCH] register(k): pack contact info based on header for searching
+ existing ul records
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+- not using the contact header resulted in omitting instance and reg-id
+ parameters, not following gruu/ob extensions, ending in duplicate
+ records for same +sip.instance
+- reported by José Luis Millán
+(cherry picked from commit efa3099252ca5d200bef6ce71df33f33b55f9941)
+---
+ modules_k/registrar/save.c | 22 ++++++++++------------
+ 1 file changed, 10 insertions(+), 12 deletions(-)
+
+diff --git a/modules_k/registrar/save.c b/modules_k/registrar/save.c
+index 8f18ea7..9b0607a 100644
+--- a/modules_k/registrar/save.c
++++ b/modules_k/registrar/save.c
+@@ -302,6 +302,10 @@ static inline ucontact_info_t* pack_ci( struct sip_msg* _m, contact_t* _c,
+ }
+
+ if(_c!=0) {
++ /* hook uri address - should be more than 'sip:' chars */
++ if(_c->uri.s!=NULL && _c->uri.len>4)
++ ci.c = &_c->uri;
++
+ /* Calculate q value of the contact */
+ if (calc_contact_q(_c->q, &ci.q) < 0) {
+ rerrno = R_INV_Q;
+@@ -651,6 +655,12 @@ static inline int update_contacts(struct sip_msg* _m, urecord_t* _r,
+ /* calculate expires */
+ calc_contact_expires(_m, _c->expires, &expires);
+
++ /* pack the contact info */
++ if ( (ci=pack_ci( 0, _c, expires, 0))==0 ) {
++ LM_ERR("failed to pack contact specific info\n");
++ goto error;
++ }
++
+ /* search for the contact*/
+ ret = ul.get_ucontact_by_instance( _r, &_c->uri, ci, &c);
+ if (ret==-1) {
+@@ -668,12 +678,6 @@ static inline int update_contacts(struct sip_msg* _m, urecord_t* _r,
+ if (expires==0)
+ continue;
+
+- /* pack the contact_info */
+- if ( (ci=pack_ci( 0, _c, expires, 0))==0 ) {
+- LM_ERR("failed to extract contact info\n");
+- goto error;
+- }
+-
+ if (ul.insert_ucontact( _r, &_c->uri, ci, &c) < 0) {
+ rerrno = R_UL_INS_C;
+ LM_ERR("failed to insert contact\n");
+@@ -710,12 +714,6 @@ static inline int update_contacts(struct sip_msg* _m, urecord_t* _r,
+ rc = 3;
+ } else {
+ /* do update */
+- /* pack the contact specific info */
+- if ( (ci=pack_ci( 0, _c, expires, 0))==0 ) {
+- LM_ERR("failed to pack contact specific info\n");
+- goto error;
+- }
+-
+ if(_mode)
+ {
+ ptr=_r->contacts;
+--
+1.7.9.5
+
More information about the Pkg-voip-commits
mailing list