From 246534f3389ba9065a48f547a0604ada89030900 Mon Sep 17 00:00:00 2001 From: "/C=DE/ST=Berlin/L=Berlin/O=Netfilter Project/OU=Development/CN=laforge/emailAddress=laforge@netfilter.org" Date: Sat, 7 Jan 2006 22:05:44 +0000 Subject: remove strerror function of db helpers and move error printing directly into db plugins --- output/mysql/ulogd_output_MYSQL.c | 18 ++++++++---------- output/pgsql/ulogd_output_PGSQL.c | 22 ++++++++++++---------- 2 files changed, 20 insertions(+), 20 deletions(-) (limited to 'output') diff --git a/output/mysql/ulogd_output_MYSQL.c b/output/mysql/ulogd_output_MYSQL.c index c8bea50..4484696 100644 --- a/output/mysql/ulogd_output_MYSQL.c +++ b/output/mysql/ulogd_output_MYSQL.c @@ -113,7 +113,8 @@ static int get_columns_mysql(struct ulogd_pluginstance *upi) result = mysql_list_fields(mi->dbh, table_ce(upi->config_kset).u.string, NULL); if (!result) { - ulogd_log(ULOGD_ERROR, "error in list_fields()\n"); + ulogd_log(ULOGD_ERROR, "error in list_fields(): %s\n", + mysql_error(mi->dbh)); return -1; } @@ -191,7 +192,8 @@ static int open_db_mysql(struct ulogd_pluginstance *upi) (const char *) &connect_timeout); if (!mysql_real_connect(mi->dbh, server, user, pass, db, port, NULL, 0)) { - ulogd_log(ULOGD_ERROR, "can't connect to db\n"); + ulogd_log(ULOGD_ERROR, "can't connect to db: %s\n", + mysql_error(mi->dbh)); return -1; } @@ -217,25 +219,21 @@ static int execute_mysql(struct ulogd_pluginstance *upi, int ret; ret = mysql_real_query(mi->dbh, stmt, len); - if (ret) + if (ret) { + ulogd_log(ULOGD_ERROR, "execute failed (%s)\n", + mgsql_error(mi->dbh)); return -1; + } return 0; } -static char *strerror_mysql(struct ulogd_pluginstance *upi) -{ - struct mysql_instance *mi = (struct mysql_instance *) upi->private; - return (char *) mysql_error(mi->dbh); -} - static struct db_driver db_driver_mysql = { .get_columns = &get_columns_mysql, .open_db = &open_db_mysql, .close_db = &close_db_mysql, .escape_string = &escape_string_mysql, .execute = &execute_mysql, - .strerror = &strerror_mysql, }; static int configure_mysql(struct ulogd_pluginstance *upi, diff --git a/output/pgsql/ulogd_output_PGSQL.c b/output/pgsql/ulogd_output_PGSQL.c index 0bb812a..74ce032 100644 --- a/output/pgsql/ulogd_output_PGSQL.c +++ b/output/pgsql/ulogd_output_PGSQL.c @@ -149,12 +149,15 @@ static int get_columns_pgsql(struct ulogd_pluginstance *upi) pi->pgres = PQexec(pi->dbh, pgbuf); if (!pi->pgres) { - ulogd_log(ULOGD_DEBUG, "result false"); + ulogd_log(ULOGD_DEBUG, "result false (%s)", + PQerrorMessage(pi->dbh)); return -1; } if (PQresultStatus(pi->pgres) != PGRES_TUPLES_OK) { - ulogd_log(ULOGD_DEBUG, "pres_command_not_ok"); + ulogd_log(ULOGD_DEBUG, "pres_command_not_ok (%s)", + PQerrorMessage(pi->dbh)); + PQclear(pi->pgres); return -1; } @@ -168,6 +171,7 @@ static int get_columns_pgsql(struct ulogd_pluginstance *upi) if (!upi->input.keys) { upi->input.num_keys = 0; ulogd_log(ULOGD_ERROR, "ENOMEM\n"); + PQclear(pi->pgres); return -ENOMEM; } @@ -255,6 +259,8 @@ static int open_db_pgsql(struct ulogd_pluginstance *upi) pi->dbh = PQconnectdb(connstr); if (PQstatus(pi->dbh) != CONNECTION_OK) { + ulogd_log(ULOGD_ERROR, "unable to connect to db (%s): %s\n", + connstr, PQerrorMessage(pi->dbh)); close_db_pgsql(upi); return -1; } @@ -281,25 +287,21 @@ static int execute_pgsql(struct ulogd_pluginstance *upi, struct pgsql_instance *pi = (struct pgsql_instance *) upi->private; pi->pgres = PQexec(pi->dbh, stmt); - if (!pi->pgres || PQresultStatus(pi->pgres) != PGRES_COMMAND_OK) + if (!pi->pgres || PQresultStatus(pi->pgres) != PGRES_COMMAND_OK) { + ulogd_log(ULOGD_ERROR, "execute failed (%s)\n", + PQerrorMessage(pi->dbh)); return -1; + } return 0; } -static char *strerror_pgsql(struct ulogd_pluginstance *upi) -{ - struct pgsql_instance *pi = (struct pgsql_instance *) upi->private; - return PQresultErrorMessage(pi->pgres); -} - static struct db_driver db_driver_pgsql = { .get_columns = &get_columns_pgsql, .open_db = &open_db_pgsql, .close_db = &close_db_pgsql, .escape_string = &escape_string_pgsql, .execute = &execute_pgsql, - .strerror = &strerror_pgsql, }; static int configure_pgsql(struct ulogd_pluginstance *upi, -- cgit v1.2.3