summaryrefslogtreecommitdiffstats
path: root/output
diff options
context:
space:
mode:
authorJeremy Sowden <jeremy@azazel.net>2021-11-30 10:55:42 +0000
committerPablo Neira Ayuso <pablo@netfilter.org>2021-12-06 22:27:45 +0100
commit23dcfc558ecfcf7cc7ef8a002dea8a3ac31f0335 (patch)
treee1b932a79c2acf94681aae7b7c4b60b7a50ac7b0 /output
parentd429162387ce4fe12e7e35d911680cb1c37f2cd2 (diff)
output: DBI: fix configuration of DB connection
In `open_db_dbi`, we test whether various config-settings are defined by comparing their string values to `NULL`. However, the `u.string` member of `struct config_entry` is an array, not a pointer, so it is never `NULL`. Instead, check whether the string is empty. Signed-off-by: Jeremy Sowden <jeremy@azazel.net> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'output')
-rw-r--r--output/dbi/ulogd_output_DBI.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/output/dbi/ulogd_output_DBI.c b/output/dbi/ulogd_output_DBI.c
index 57e3058..88af7a1 100644
--- a/output/dbi/ulogd_output_DBI.c
+++ b/output/dbi/ulogd_output_DBI.c
@@ -176,9 +176,9 @@ static int open_db_dbi(struct ulogd_pluginstance *upi)
{
struct dbi_instance *pi = (struct dbi_instance *) upi->private;
char *server = host_ce(upi->config_kset).u.string;
- char *user = user_ce(upi->config_kset).u.string;
- char *pass = pass_ce(upi->config_kset).u.string;
- char *db = db_ce(upi->config_kset).u.string;
+ char *user = user_ce(upi->config_kset).u.string;
+ char *pass = pass_ce(upi->config_kset).u.string;
+ char *db = db_ce(upi->config_kset).u.string;
char *dbtype = dbtype_ce(upi->config_kset).u.string;
dbi_driver driver;
int ret;
@@ -203,13 +203,13 @@ static int open_db_dbi(struct ulogd_pluginstance *upi)
return -1;
}
- if (server)
+ if (server[0])
dbi_conn_set_option(pi->dbh, "host", server);
- if (user)
+ if (user[0])
dbi_conn_set_option(pi->dbh, "username", user);
- if (pass)
+ if (pass[0])
dbi_conn_set_option(pi->dbh, "password", pass);
- if (db)
+ if (db[0])
dbi_conn_set_option(pi->dbh, "dbname", db);
ret = dbi_conn_connect(pi->dbh);