summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--output/ulogd_output_LOGEMU.c23
-rw-r--r--util/printpkt.c2
2 files changed, 16 insertions, 9 deletions
diff --git a/output/ulogd_output_LOGEMU.c b/output/ulogd_output_LOGEMU.c
index 372a026..7cea20d 100644
--- a/output/ulogd_output_LOGEMU.c
+++ b/output/ulogd_output_LOGEMU.c
@@ -28,6 +28,7 @@
#include <stdlib.h>
#include <unistd.h>
#include <string.h>
+#include <errno.h>
#include <ulogd/ulogd.h>
#include <ulogd/conffile.h>
#include "../util/printpkt.c"
@@ -46,6 +47,10 @@
((unsigned char *)&addr)[2], \
((unsigned char *)&addr)[3]
+struct ulogd_key logemu_inp[] = {
+
+};
+
static struct config_keyset logemu_kset = {
.num_ces = 2,
.ces = {
@@ -64,21 +69,23 @@ static struct config_keyset logemu_kset = {
},
};
-struct logemu_instance = {
+struct logemu_instance {
struct ulogd_pluginstance upi;
- static FILE *of = NULL;
+ FILE *of;
};
-static int _output_logemu(ulog_iret_t *res)
+static int _output_logemu(struct ulogd_pluginstance *upi)
{
+ struct logemu_instance *li = (struct logemu_instance *) upi;
+ struct ulogd_key *res = upi->input;
static char buf[4096];
printpkt_print(res, buf, 1);
- fprintf(of, "%s", buf);
+ fprintf(li->of, "%s", buf);
- if (syslsync_ce.u.value)
- fflush(of);
+ if (upi->configs[1].u.value)
+ fflush(li->of);
return 0;
}
@@ -91,7 +98,7 @@ static void signal_handler_logemu(struct ulogd_pluginstance *pi, int signal)
case SIGHUP:
ulogd_log(ULOGD_NOTICE, "syslogemu: reopening logfile\n");
fclose(li->of);
- li->of = fopen(syslogf_ce.u.string, "a");
+ li->of = fopen(pi->configs[0].u.string, "a");
if (!li->of) {
ulogd_log(ULOGD_FATAL, "can't open syslogemu: %s\n",
strerror(errno));
@@ -119,7 +126,7 @@ static struct ulogd_pluginstance *init_logemu(struct ulogd_plugin *pl)
#ifdef DEBUG_LOGEMU
li->of = stdout;
#else
- li->of = fopen(syslogf_ce.u.string, "a");
+ li->of = fopen(li->upi.configs[0].u.string, "a");
if (!li->of) {
ulogd_log(ULOGD_FATAL, "can't open syslogemu: %s\n",
strerror(errno));
diff --git a/util/printpkt.c b/util/printpkt.c
index b8f3b9b..a8c09a2 100644
--- a/util/printpkt.c
+++ b/util/printpkt.c
@@ -95,7 +95,7 @@ static struct intr_id intr_ids[INTR_IDS] = {
#define GET_VALUE(x) ulogd_keyh[intr_ids[x].id].interp->result[ulogd_keyh[intr_ids[x].id].offset].value
#define GET_FLAGS(x) ulogd_keyh[intr_ids[x].id].interp->result[ulogd_keyh[intr_ids[x].id].offset].flags
-int printpkt_print(ulog_iret_t *res, char *buf, int prefix)
+int printpkt_print(struct ulogd_key *res, char *buf, int prefix)
{
char *timestr;
char *tmp;