Module: kamailio
Branch: master
Commit: 1bb4536846ee05e525c4e0fb348c5e6a6d9a47dc
URL:
https://github.com/kamailio/kamailio/commit/1bb4536846ee05e525c4e0fb348c5e6…
Author: Mikko Lehto <mslehto(a)iki.fi>
Committer: Mikko Lehto <mslehto(a)iki.fi>
Date: 2015-08-26T22:20:25+03:00
modules/sipcapture: stores request URI domain part
---
Modified: modules/sipcapture/sipcapture.c
Modified: modules/sipcapture/sipcapture.h
---
Diff:
https://github.com/kamailio/kamailio/commit/1bb4536846ee05e525c4e0fb348c5e6…
Patch:
https://github.com/kamailio/kamailio/commit/1bb4536846ee05e525c4e0fb348c5e6…
---
diff --git a/modules/sipcapture/sipcapture.c b/modules/sipcapture/sipcapture.c
index 454efa6..0151fce 100644
--- a/modules/sipcapture/sipcapture.c
+++ b/modules/sipcapture/sipcapture.c
@@ -92,7 +92,7 @@ MODULE_VERSION
#define TABLE_LEN 256
-#define NR_KEYS 39
+#define NR_KEYS 40
#define RTCP_NR_KEYS 12
/*multiple table mode*/
@@ -159,6 +159,7 @@ static str reply_reason_column = str_init("reply_reason");
static str correlation_column = str_init("correlation_id");
static str ruri_column = str_init("ruri");
static str ruri_user_column = str_init("ruri_user");
+static str ruri_domain_column = str_init("ruri_domain");
static str from_user_column = str_init("from_user");
static str from_domain_column = str_init("from_domain");
static str from_tag_column = str_init("from_tag");
@@ -273,15 +274,16 @@ static param_export_t params[] = {
{"date_column", PARAM_STR, &date_column },
{"micro_ts_column", PARAM_STR, µ_ts_column },
{"method_column", PARAM_STR, &method_column },
- {"correlation_column", PARAM_STR, &correlation_column.s },
+ {"correlation_column", PARAM_STR, &correlation_column.s },
{"reply_reason_column", PARAM_STR, &reply_reason_column },
{"ruri_column", PARAM_STR, &ruri_column },
{"ruri_user_column", PARAM_STR, &ruri_user_column },
+ {"ruri_domain_column", PARAM_STR, &ruri_domain_column },
{"from_user_column", PARAM_STR, &from_user_column },
- {"from_domain_column", PARAM_STR, &from_domain_column },
+ {"from_domain_column", PARAM_STR, &from_domain_column },
{"from_tag_column", PARAM_STR, &from_tag_column },
{"to_user_column", PARAM_STR, &to_user_column },
- {"to_domain_column", PARAM_STR, &to_domain_column },
+ {"to_domain_column", PARAM_STR, &to_domain_column },
{"to_tag_column", PARAM_STR, &to_tag_column },
{"pid_user_column", PARAM_STR, &pid_user_column },
{"contact_user_column", PARAM_STR, &contact_user_column },
@@ -1412,15 +1414,20 @@ static int sip_capture_store(struct _sipcapture_object *sco, str
*dtable, _captu
db_vals[37].nul = 0;
db_vals[37].val.str_val = sco->to_domain;
- db_keys[38] = &msg_column;
- db_vals[38].type = DB1_BLOB;
+ db_keys[38] = &ruri_domain_column;
+ db_vals[38].type = DB1_STR;
db_vals[38].nul = 0;
+ db_vals[38].val.str_val = sco->ruri_domain;
+
+ db_keys[39] = &msg_column;
+ db_vals[39].type = DB1_BLOB;
+ db_vals[39].nul = 0;
/*we don't have empty spaces now */
tmp.s = sco->msg.s;
tmp.len = sco->msg.len;
- db_vals[38].val.blob_val = tmp;
+ db_vals[39].val.blob_val = tmp;
if (dtable){
table = dtable;
@@ -1545,6 +1552,7 @@ static int sip_capture(struct sip_msg *msg, str *_table,
_capture_mode_data_t *
sco.ruri = msg->first_line.u.request.uri;
sco.ruri_user = msg->parsed_uri.user;
+ sco.ruri_domain = msg->parsed_uri.host;
}
else if(msg->first_line.type == SIP_REPLY) {
sco.method = msg->first_line.u.reply.status;
@@ -1552,6 +1560,7 @@ static int sip_capture(struct sip_msg *msg, str *_table,
_capture_mode_data_t *
EMPTY_STR(sco.ruri);
EMPTY_STR(sco.ruri_user);
+ EMPTY_STR(sco.ruri_domain);
}
else {
LM_ERR("unknown type [%i]\n", msg->first_line.type);
diff --git a/modules/sipcapture/sipcapture.h b/modules/sipcapture/sipcapture.h
index f939eb0..42bbd187 100644
--- a/modules/sipcapture/sipcapture.h
+++ b/modules/sipcapture/sipcapture.h
@@ -29,6 +29,7 @@ struct _sipcapture_object {
str reply_reason;
str ruri;
str ruri_user;
+ str ruri_domain;
str from_user;
str from_domain;
str from_tag;