summaryrefslogtreecommitdiffstats
path: root/ulogd/mysql/ulogd_MYSQL.c
diff options
context:
space:
mode:
Diffstat (limited to 'ulogd/mysql/ulogd_MYSQL.c')
-rw-r--r--ulogd/mysql/ulogd_MYSQL.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/ulogd/mysql/ulogd_MYSQL.c b/ulogd/mysql/ulogd_MYSQL.c
index 5b237e1..206055f 100644
--- a/ulogd/mysql/ulogd_MYSQL.c
+++ b/ulogd/mysql/ulogd_MYSQL.c
@@ -35,6 +35,7 @@
#include <stdlib.h>
#include <string.h>
+#include <arpa/inet.h>
#include <ulogd/ulogd.h>
#include <ulogd/conffile.h>
#include <mysql/mysql.h>
@@ -114,6 +115,7 @@ static int mysql_output(ulog_iret_t *result)
ulog_iret_t *res;
#ifdef IP_AS_STRING
char *tmpstr; /* need this for --log-ip-as-string */
+ struct in_addr addr;
#endif
stmt_ins = stmt_val;
@@ -154,8 +156,10 @@ static int mysql_output(ulog_iret_t *result)
break;
case ULOGD_RET_IPADDR:
#ifdef IP_AS_STRING
+ memset(&addr, 0, sizeof(addr0));
+ addr.s_addr = ntohl(res->value.ui32);
*stmt_ins++ = '\'';
- tmpstr = inet_ntoa(ntohl(res->value.ui32));
+ tmpstr = inet_ntoa(addr);
#ifdef OLD_MYSQL
mysql_escape_string(stmt_ins, tmpstr,
strlen(tmpstr));