Module: kamailio Branch: master Commit: cffe67566f206a6c4e76d76a36e0e1783d056369 URL: https://github.com/kamailio/kamailio/commit/cffe67566f206a6c4e76d76a36e0e178...
Author: Daniel-Constantin Mierla miconda@gmail.com Committer: Daniel-Constantin Mierla miconda@gmail.com Date: 2015-09-23T01:15:46+02:00
tsilo: removed check of use_domain for uri parameter in ts_store()
- ts_append() is using full sip uri and will not match if ts_store() with use_domain=0 will store only username
---
Modified: modules/tsilo/ts_store.c Modified: modules/tsilo/tsilo.c
---
Diff: https://github.com/kamailio/kamailio/commit/cffe67566f206a6c4e76d76a36e0e178... Patch: https://github.com/kamailio/kamailio/commit/cffe67566f206a6c4e76d76a36e0e178...
---
diff --git a/modules/tsilo/ts_store.c b/modules/tsilo/ts_store.c index 2cec2ef..e4f11ba 100644 --- a/modules/tsilo/ts_store.c +++ b/modules/tsilo/ts_store.c @@ -60,19 +60,14 @@ int ts_store(struct sip_msg* msg, str *puri) { } }
- if (use_domain) { - aor = suri; - } - else { - if (parse_uri(suri.s, suri.len, &ruri)!=0) - { - LM_ERR("bad uri [%.*s]\n", - suri.len, - suri.s); - return -1; - } - aor = ruri.user; + if (parse_uri(suri.s, suri.len, &ruri)!=0) + { + LM_ERR("bad uri [%.*s]\n", + suri.len, + suri.s); + return -1; } + aor = suri;
t = _tmb.t_gett(); if (!t || t==T_UNDEFINED) { diff --git a/modules/tsilo/tsilo.c b/modules/tsilo/tsilo.c index 843804c..411cbc4 100644 --- a/modules/tsilo/tsilo.c +++ b/modules/tsilo/tsilo.c @@ -212,10 +212,21 @@ static void destroy(void) return; }
+static int ts_check_uri(str *uri) +{ + struct sip_uri ruri; + if (parse_uri(uri->s, uri->len, &ruri)!=0) + { + LM_ERR("bad uri [%.*s]\n", + uri->len, + uri->s); + return -1; + } + return 0; +} /** * */ - static int fixup_ts_append_to(void** param, int param_no) { if (param_no==1 || param_no==2) { @@ -263,6 +274,8 @@ static int w_ts_append(struct sip_msg* _msg, char *_table, char *_ruri) LM_ERR("invalid ruri parameter\n"); return -1; } + if(ts_check_uri(&ruri)<0) + return -1; return ts_append(_msg, &ruri, _table); } /** @@ -309,6 +322,8 @@ static int w_ts_append_to2(struct sip_msg* msg, char *idx, char *lbl, char *tabl LM_ERR("failed to conert r-uri parameter\n"); return -1; } + if(ts_check_uri(&suri)<0) + return -1;
return ts_append_to(msg, tindex, tlabel, table, &suri); }