Module: sip-router
Branch: janakj/oracle DELETED
Commit: aad1137e2ea0cdc92201e7b30fda5429c31c9987
URL: http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=aad1137…
Author: Jan Janak <jan(a)iptel.org>
Committer: Jan Janak <jan(a)iptel.org>
Date: Mon Feb 16 15:18:04 2009 +0100
Merge branch 'master' of ssh://janakj@git.sip-router.org/sip-router into oracle
* 'master' of ssh://janakj@git.sip-router.org/sip-router:
SER replaced with SIP Router in the doxygen main file.
---
Module: sip-router
Branch: janakj/ldap DELETED
Commit: a5ec520efadd627420028d1ffecba98575872299
URL: http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=a5ec520…
Author: Jan Janak <jan(a)iptel.org>
Committer: Jan Janak <jan(a)iptel.org>
Date: Mon Feb 16 15:18:01 2009 +0100
Merge branch 'master' of ssh://janakj@git.sip-router.org/sip-router into ldap
* 'master' of ssh://janakj@git.sip-router.org/sip-router:
SER replaced with SIP Router in the doxygen main file.
---
Module: sip-router
Branch: janakj/postgres DELETED
Commit: f0546a246d0098405b61a64ca0fbaf32bbb5373f
URL: http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=f0546a2…
Author: Jan Janak <jan(a)iptel.org>
Committer: Jan Janak <jan(a)iptel.org>
Date: Wed Feb 18 14:32:18 2009 +0100
Integrate functions and parameters from kamailio sources.
This patch adds db_bind_api function from kamailio sources to the list
of exported functions. Also we call the mod_init function from kamailio
sources at the and of the mod_init function in pg_mod.c. To make this
possible I added a new header file and removed static from the mod_init
function declaration.
---
modules/db_postgres/km_db_postgres.c | 9 ++-----
modules/db_postgres/km_db_postgres.h | 39 ++++++++++++++++++++++++++++++++++
modules/db_postgres/pg_mod.c | 4 ++-
3 files changed, 45 insertions(+), 7 deletions(-)
diff --git a/modules/db_postgres/km_db_postgres.c b/modules/db_postgres/km_db_postgres.c
index c3df575..ffe9230 100644
--- a/modules/db_postgres/km_db_postgres.c
+++ b/modules/db_postgres/km_db_postgres.c
@@ -38,14 +38,11 @@
#include "../../lib/srdb1/db_con.h"
#include "../../lib/srdb1/db.h"
#include "km_dbase.h"
+#include "km_db_postgres.h"
/*MODULE_VERSION*/
-int db_postgres_bind_api(db_func_t *dbb);
-
-static int mod_init(void);
-
/*
* PostgreSQL database module interface
*/
@@ -66,14 +63,14 @@ struct kam_module_exports kam_exports = {
0, /* exported MI functions */
0, /* exported pseudo-variables */
0, /* extra processes */
- mod_init, /* module initialization function */
+ km_postgres_mod_init, /* module initialization function */
0, /* response function*/
0, /* destroy function */
0 /* per-child init function */
};
-static int mod_init(void)
+int km_postgres_mod_init(void)
{
return 0;
}
diff --git a/modules/db_postgres/km_db_postgres.h b/modules/db_postgres/km_db_postgres.h
new file mode 100644
index 0000000..8959417
--- /dev/null
+++ b/modules/db_postgres/km_db_postgres.h
@@ -0,0 +1,39 @@
+/*
+ * $Id$
+ *
+ * Copyright (C) 2001-2003 FhG Fokus
+ * Copyright (C) 2008 1&1 Internet AG
+ *
+ * This file is part of Kamailio, a free SIP server.
+ *
+ * Kamailio is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version
+ *
+ * Kamailio is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+/*! \file
+ * \brief DB_POSTGRES :: Core
+ * \ingroup db_postgres
+ * Module: \ref db_postgres
+ */
+
+#ifndef _KM_DB_POSTGRES_H
+#define _KM_DB_POSTGRES_H
+
+#include "../../lib/srdb1/db.h"
+
+int db_postgres_bind_api(db_func_t *dbb);
+
+int km_postgres_mod_init(void);
+
+#endif /* _KM_DB_POSTGRES_H */
diff --git a/modules/db_postgres/pg_mod.c b/modules/db_postgres/pg_mod.c
index 1bc4ad4..3c1e2d9 100644
--- a/modules/db_postgres/pg_mod.c
+++ b/modules/db_postgres/pg_mod.c
@@ -42,6 +42,7 @@
#include "pg_cmd.h"
#include "pg_res.h"
#include "pg_fld.h"
+#include "km_db_postgres.h"
#include "../../sr_module.h"
@@ -77,6 +78,7 @@ static cmd_export_t cmds[] = {
{"db_next", (cmd_function)pg_cmd_next, 0, 0, 0},
{"db_setopt", (cmd_function)pg_setopt, 0, 0, 0},
{"db_getopt", (cmd_function)pg_getopt, 0, 0, 0},
+ {"db_bind_api", (cmd_function)db_postgres_bind_api, 0, 0, 0},
{0, 0, 0, 0, 0}
};
@@ -538,7 +540,7 @@ static int pg_mod_init(void)
}
return -1;
#endif /* PG_TEST */
- return 0;
+ return km_postgres_mod_init();
}
/** @} */
Here is a short summary of my database driver integration attempt.
The following db driver modules have been merged from both (kamailio and ser),
these modules should work with both projects and they have been merged into
the sip-router master branch:
* db_berkeley
* db_flatstore
* db_mysql
* db_postgres
I have verified that all the modules above can be compiled in sip-router and
that they can be loaded and used. Two modules, db_flatstore and db_berkeley,
contain support for kamailio MI interface. The interface wouldn't work right
now because I could not export MI functions with the current state of
sip-router module interface. All the functions are there but they won't be
made available to the MI interface.
Then there are some database drivers that I haven' integrated because it does
not make much sense right now:
* oracle in ser and db_oracle in kamailio, the ser module currently does not
work
* dbtext in ser and db_text in kamailio, the ser module currently does not
work
And finally db_unixodbc module in kamailio does not have an equivalent in ser
so we can keep it where it is right now. I would like to extend the module
with support for libsrdb2 in the future and make it work with sip-router as
well.
Jan.
Module: sip-router
Branch: janakj/bdb
Commit: 728a5e6280219c2b4a2d58940b2e14a7e29950b1
URL: http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=728a5e6…
Author: Jan Janak <jan(a)iptel.org>
Committer: Jan Janak <jan(a)iptel.org>
Date: Thu Feb 19 15:06:58 2009 +0100
Merge branch janakj/bdb into master.
* commit 'sr/janakj/bdb': (97 commits)
Integrate module interfaces.
Include bdb_mod.h and remove variables available there from the file.
Various functions prefixed with km_ to avoid conflicts.
New header file bdb_mod.h with parameters defined in bdb_mod.c
Comment out MODULE_VERSION in km_db_berkeley.c
Make km_sources compile within the db_berkeley sip-router module.
Link the module with libkmi.
Add km_prefix to locally included header files.
Defines protecting header fields changed to match filenames.
Remoted km_Makefile and km_README (same as README)
Link the modules also with libsrdb1
Make the module compile in the sip-router source tree.
Fixed wrong order of directives in modules Makefile.
Database flags renamed from DB_* to SRDB_* to avoid conflicts.
Module db_berkeley updated to database api version 2.0.
- unify common rows and row allocation functionality in the DB API core
- unify common rows and row allocation functionality in the DB API core
- fix compilation on OpenBSD, related to missing includes paths and wrong
- fix compilation on OpenBSD, related to missing includes paths and wrong
- disable big integer (DB_BIGINT) support for non SQL DB modules for now
...
---