From 2d71c1472c64bc47348fc4c6337a2e903e2649b3 Mon Sep 17 00:00:00 2001 From: Edward Rudd Date: Wed, 07 Apr 2004 06:21:24 +0000 Subject: Added registration function for database drivers completely separated mysql driver added optional server announce (LogSQLAnnouce On) cleaned up internal names of Database parameters added code to allow +/- of logged cookies,headers, and notes, as well as remhostignore, request allow and request ignore. reorganized command_rec again made bigger not about deprecated commands updated documentation --- (limited to 'mod_log_sql_mysql.c') diff --git a/mod_log_sql_mysql.c b/mod_log_sql_mysql.c index a3f8bbc..5a654f3 100644 --- a/mod_log_sql_mysql.c +++ b/mod_log_sql_mysql.c @@ -29,13 +29,13 @@ #define MYSQL_ERROR(mysql) ((mysql)?(mysql_error(mysql)):"MySQL server has gone away") /* Connect to the MYSQL database */ -logsql_opendb_ret log_sql_mysql_connect(server_rec *s, logsql_dbconnection *db) +static logsql_opendb_ret log_sql_mysql_connect(server_rec *s, logsql_dbconnection *db) { - const char *host = apr_table_get(db->parms,"host"); - const char *user = apr_table_get(db->parms,"user"); - const char *passwd = apr_table_get(db->parms,"passwd"); + const char *host = apr_table_get(db->parms,"hostname"); + const char *user = apr_table_get(db->parms,"username"); + const char *passwd = apr_table_get(db->parms,"password"); const char *database = apr_table_get(db->parms,"database"); - const char *s_tcpport = apr_table_get(db->parms,"tcpport"); + const char *s_tcpport = apr_table_get(db->parms,"port"); unsigned int tcpport = (s_tcpport)?atoi(s_tcpport):3306; const char *socketfile = apr_table_get(db->parms,"socketfile"); MYSQL *dblink = db->handle; @@ -63,7 +63,7 @@ logsql_opendb_ret log_sql_mysql_connect(server_rec *s, logsql_dbconnection *db) } /* Close the DB link */ -void log_sql_mysql_close(logsql_dbconnection *db) +static void log_sql_mysql_close(logsql_dbconnection *db) { mysql_close((MYSQL *)db->handle); } @@ -71,7 +71,7 @@ void log_sql_mysql_close(logsql_dbconnection *db) /* Routine to escape the 'dangerous' characters that would otherwise * corrupt the INSERT string: ', \, and " */ -const char *log_sql_mysql_escape(const char *from_str, apr_pool_t *p, +static const char *log_sql_mysql_escape(const char *from_str, apr_pool_t *p, logsql_dbconnection *db) { if (!from_str) @@ -110,7 +110,7 @@ const char *log_sql_mysql_escape(const char *from_str, apr_pool_t *p, } /* Run a mysql insert query and return a categorized error or success */ -logsql_query_ret log_sql_mysql_query(request_rec *r,logsql_dbconnection *db, +static logsql_query_ret log_sql_mysql_query(request_rec *r,logsql_dbconnection *db, const char *query) { int retval; @@ -147,7 +147,7 @@ logsql_query_ret log_sql_mysql_query(request_rec *r,logsql_dbconnection *db, } /* Create table table_name of type table_type. */ -logsql_table_ret log_sql_mysql_create(request_rec *r, logsql_dbconnection *db, +static logsql_table_ret log_sql_mysql_create(request_rec *r, logsql_dbconnection *db, logsql_tabletype table_type, const char *table_name) { int retval; @@ -231,3 +231,18 @@ logsql_table_ret log_sql_mysql_create(request_rec *r, logsql_dbconnection *db, signal(SIGPIPE, handler); return LOGSQL_TABLE_SUCCESS; } + +static char *supported_drivers[] = {"mysql",NULL}; +static logsql_dbdriver mysql_driver = { + supported_drivers, + log_sql_mysql_connect, /* open DB connection */ + log_sql_mysql_close, /* close DB connection */ + log_sql_mysql_escape, /* escape query */ + log_sql_mysql_query, /* insert query */ + log_sql_mysql_create /* create table */ +}; + +LOGSQL_REGISTER(mysql) { + log_sql_register_driver(p,&mysql_driver); + LOGSQL_REGISTER_RETURN; +} -- cgit v0.9.2