[netfilter-cvslog] r7414 - branches/ulog/ulogd2/input/packet
pablo at netfilter.org
pablo at netfilter.org
Tue Mar 25 11:06:15 CET 2008
Author: pablo at netfilter.org
Date: 2008-03-25 11:06:15 +0100 (Tue, 25 Mar 2008)
New Revision: 7414
Modified:
branches/ulog/ulogd2/input/packet/ulogd_inppkt_ULOG.c
Log:
A specific instance of NFLOG can now be use in multiple stacks. This is done
by duplicating the interpretation of the message.
Signed-off-by: Eric Leblond <eric at inl.fr>
Modified: branches/ulog/ulogd2/input/packet/ulogd_inppkt_ULOG.c
===================================================================
--- branches/ulog/ulogd2/input/packet/ulogd_inppkt_ULOG.c 2008-03-25 10:01:34 UTC (rev 7413)
+++ branches/ulog/ulogd2/input/packet/ulogd_inppkt_ULOG.c 2008-03-25 10:06:15 UTC (rev 7414)
@@ -215,6 +215,7 @@
static int ulog_read_cb(int fd, unsigned int what, void *param)
{
struct ulogd_pluginstance *upi = (struct ulogd_pluginstance *)param;
+ struct ulogd_pluginstance *npi = NULL;
struct ulog_input *u = (struct ulog_input *) &upi->private;
ulog_packet_msg_t *upkt;
int len;
@@ -239,6 +240,11 @@
while ((upkt = ipulog_get_packet(u->libulog_h,
u->libulog_buf, len))) {
ulogd_log(ULOGD_DEBUG, "==> ulog packet received\n");
+ /* since we support the re-use of one instance in
+ * several different stacks, we duplicate the message
+ * to let them know */
+ llist_for_each_entry(npi, &upi->plist, plist)
+ interp_packet(npi, upkt);
interp_packet(upi, upkt);
}
}
More information about the netfilter-cvslog
mailing list