aboutsummaryrefslogtreecommitdiffstats
path: root/cdr/cdr_tds.c
diff options
context:
space:
mode:
authormogorman <mogorman@f38db490-d61c-443f-a65b-d21fe96a405b>2006-03-08 22:12:20 +0000
committermogorman <mogorman@f38db490-d61c-443f-a65b-d21fe96a405b>2006-03-08 22:12:20 +0000
commiteb6b8e6e0b349eb5001fe448fa5882126af6863a (patch)
tree0e1d0d568b27370879554877ba5a5e50a5dfbb53 /cdr/cdr_tds.c
parentfe529fabda3646c2bc7b2e9580e1629c667ca8e5 (diff)
allows the table field to be configurable for
cdr_tds.conf. patch provided by bug 6629 with minor change. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@12475 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'cdr/cdr_tds.c')
-rw-r--r--cdr/cdr_tds.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/cdr/cdr_tds.c b/cdr/cdr_tds.c
index 14aa9b2bd..bc1be7e5c 100644
--- a/cdr/cdr_tds.c
+++ b/cdr/cdr_tds.c
@@ -89,6 +89,7 @@ static char *name = "mssql";
static char *config = "cdr_tds.conf";
static char *hostname = NULL, *dbname = NULL, *dbuser = NULL, *password = NULL, *charset = NULL, *language = NULL;
+static char *table = NULL;
static int connected = 0;
@@ -135,7 +136,7 @@ static int tds_log(struct ast_cdr *cdr)
sprintf(
sqlcmd,
- "INSERT INTO cdr "
+ "INSERT INTO %s "
"("
"accountcode, "
"src, "
@@ -175,6 +176,7 @@ static int tds_log(struct ast_cdr *cdr)
"'%s', " /* amaflags */
"'%s'" /* uniqueid */
")",
+ table,
accountcode,
src,
dst,
@@ -415,6 +417,7 @@ static int tds_unload_module(void)
if (password) free(password);
if (charset) free(charset);
if (language) free(language);
+ if (table) free(table);
return 0;
}
@@ -475,6 +478,13 @@ static int tds_load_module(void)
else
language = strdup("us_english");
+ ptr = ast_variable_retrieve(cfg,"global","table");
+ if (ptr == NULL) {
+ ast_log(LOG_DEBUG,"cdr_tds: table not specified. Assuming cdr\n");
+ ptr = "cdr";
+ }
+ table = strdup(ptr);
+
ast_config_destroy(cfg);
mssql_connect();