mirror of https://github.com/sipwise/kamailio.git
Change-Id: I2b7f21a48f4fbea69f4689a747f0f96c18e944c7changes/23/2823/2
parent
4e532f2180
commit
a468cf8f8d
@ -1,36 +0,0 @@
|
||||
From 160a9ae1f9bbd3451911a3a19f271142f8f6c98d Mon Sep 17 00:00:00 2001
|
||||
From: Victor Seva <linuxmaniac@torreviejawireless.org>
|
||||
Date: Tue, 7 Jul 2015 13:04:00 +0200
|
||||
Subject: [PATCH] dmq_usrloc: update get_all_ucontacts API request
|
||||
|
||||
Fixes: #236
|
||||
(cherry picked from commit 733fd5daf74963b152a2964f9eea1a6fff91858a)
|
||||
---
|
||||
modules/dmq_usrloc/usrloc_sync.c | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/modules/dmq_usrloc/usrloc_sync.c b/modules/dmq_usrloc/usrloc_sync.c
|
||||
index 3bd0c24..6a77b00 100644
|
||||
--- a/modules/dmq_usrloc/usrloc_sync.c
|
||||
+++ b/modules/dmq_usrloc/usrloc_sync.c
|
||||
@@ -116,7 +116,7 @@ void usrloc_get_all_ucontact(dmq_node_t* node)
|
||||
LM_ERR("dmq_ul.get_all_ucontacts is NULL\n");
|
||||
goto done;
|
||||
}
|
||||
- rval = dmq_ul.get_all_ucontacts(buf, len, 0, 0, 1);
|
||||
+ rval = dmq_ul.get_all_ucontacts(buf, len, 0, 0, 1, 0);
|
||||
if (rval<0) {
|
||||
LM_ERR("failed to fetch contacts\n");
|
||||
goto done;
|
||||
@@ -130,7 +130,7 @@ void usrloc_get_all_ucontact(dmq_node_t* node)
|
||||
LM_ERR("out of pkg memory\n");
|
||||
goto done;
|
||||
}
|
||||
- rval = dmq_ul.get_all_ucontacts(buf, len, 0, 0, 1);
|
||||
+ rval = dmq_ul.get_all_ucontacts(buf, len, 0, 0, 1, 0);
|
||||
if (rval != 0) {
|
||||
pkg_free(buf);
|
||||
goto done;
|
||||
--
|
||||
2.1.4
|
||||
|
@ -1,55 +0,0 @@
|
||||
From 64daeb365d45249d9562a416bd79326ea5d86328 Mon Sep 17 00:00:00 2001
|
||||
From: Victor Seva <linuxmaniac@torreviejawireless.org>
|
||||
Date: Thu, 6 Aug 2015 14:58:52 +0200
|
||||
Subject: [PATCH] Revert "pua_reginfo: use ul.get_urecord_by_ruid instead of
|
||||
ul.get_urecord"
|
||||
|
||||
This reverts commit 9a6d8d2bffe13b442ed5e880fb0dd2c6572c29e2.
|
||||
---
|
||||
modules/pua_reginfo/usrloc_cb.c | 14 ++++++++------
|
||||
1 file changed, 8 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/modules/pua_reginfo/usrloc_cb.c b/modules/pua_reginfo/usrloc_cb.c
|
||||
index 95ec762..7f84788 100644
|
||||
--- a/modules/pua_reginfo/usrloc_cb.c
|
||||
+++ b/modules/pua_reginfo/usrloc_cb.c
|
||||
@@ -224,9 +224,9 @@ void reginfo_usrloc_cb(ucontact_t* c, int type, void* param) {
|
||||
str content_type;
|
||||
udomain_t * domain;
|
||||
urecord_t * record;
|
||||
- ucontact_t* _c = NULL;
|
||||
int res;
|
||||
str uri = {NULL, 0};
|
||||
+ str user = {NULL, 0};
|
||||
|
||||
char* at = NULL;
|
||||
char id_buf[512];
|
||||
@@ -251,6 +251,9 @@ void reginfo_usrloc_cb(ucontact_t* c, int type, void* param) {
|
||||
LM_ERR("Unknown Type %i\n", type);
|
||||
return;
|
||||
}
|
||||
+ /* make a local copy of the AOR */
|
||||
+ user.len = c->aor->len;
|
||||
+ user.s = c->aor->s;
|
||||
|
||||
/* Get the UDomain for this account */
|
||||
res = ul.get_udomain(c->domain->s, &domain);
|
||||
@@ -259,11 +262,10 @@ void reginfo_usrloc_cb(ucontact_t* c, int type, void* param) {
|
||||
return;
|
||||
}
|
||||
|
||||
- /* Get the URecord for this ruid */
|
||||
- res = ul.get_urecord_by_ruid(domain, ul.get_aorhash(c->aor), &(c->ruid),
|
||||
- &record, &_c);
|
||||
- if (res < 0) {
|
||||
- LM_ERR("'%.*s (%.*s)' Not found in usrloc\n", c->aor->len, c->aor->s, c->domain->len, c->domain->s);
|
||||
+ /* Get the URecord for this AOR */
|
||||
+ res = ul.get_urecord(domain, &user, &record);
|
||||
+ if (res > 0) {
|
||||
+ LM_ERR("' %.*s (%.*s)' Not found in usrloc\n", c->aor->len, c->aor->s, c->domain->len, c->domain->s);
|
||||
return;
|
||||
}
|
||||
|
||||
--
|
||||
2.4.6
|
||||
|
@ -1,41 +0,0 @@
|
||||
From 99ce64fc555cc0b6b0189d812c6156cb05fb2e1b Mon Sep 17 00:00:00 2001
|
||||
From: Victor Seva <linuxmaniac@torreviejawireless.org>
|
||||
Date: Thu, 6 Aug 2015 20:36:22 +0200
|
||||
Subject: [PATCH] registrar: get instance and ref_id when using msg
|
||||
|
||||
needed for check max_contacts properly if sip.instance exists
|
||||
as contact parameter
|
||||
|
||||
See: #278
|
||||
---
|
||||
modules/registrar/save.c | 14 ++++++++++++++
|
||||
1 file changed, 14 insertions(+)
|
||||
|
||||
diff --git a/modules/registrar/save.c b/modules/registrar/save.c
|
||||
index ae311e8..1ebb849 100644
|
||||
--- a/modules/registrar/save.c
|
||||
+++ b/modules/registrar/save.c
|
||||
@@ -307,6 +307,20 @@ static inline ucontact_info_t* pack_ci( struct sip_msg* _m, contact_t* _c,
|
||||
}
|
||||
|
||||
ci.server_id = server_id;
|
||||
+ if(_m->contact) {
|
||||
+ _c = (((contact_body_t*)_m->contact->parsed)->contacts);
|
||||
+ if(_c->instance!=NULL && _c->instance->body.len>0) {
|
||||
+ ci.instance = _c->instance->body;
|
||||
+ LM_DBG("set instance[%.*s]\n", ci.instance.len, ci.instance.s);
|
||||
+ }
|
||||
+ if(_use_regid && _c->instance!=NULL && _c->reg_id!=NULL && _c->reg_id->body.len>0) {
|
||||
+ if(str2int(&_c->reg_id->body, &ci.reg_id)<0 || ci.reg_id==0)
|
||||
+ {
|
||||
+ LM_ERR("invalid reg-id value\n");
|
||||
+ goto error;
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
|
||||
allow_parsed = 0; /* not parsed yet */
|
||||
received_found = 0; /* not found yet */
|
||||
--
|
||||
2.4.6
|
||||
|
Loading…
Reference in new issue