Le mercredi 15 février 2012 à 00:36 +0100, Richard Weinberger a écrit : > Using XT_LOG_ADD_TIMESTAMP it is possible to have a timestamp > directly in the log message. > > Signed-off-by: Richard Weinberger <richard@xxxxxx> > --- > include/linux/netfilter/xt_LOG.h | 1 + > net/netfilter/xt_LOG.c | 10 ++++++++++ > 2 files changed, 11 insertions(+), 0 deletions(-) > > diff --git a/include/linux/netfilter/xt_LOG.h b/include/linux/netfilter/xt_LOG.h > index e4b1177..d84710c 100644 > --- a/include/linux/netfilter/xt_LOG.h > +++ b/include/linux/netfilter/xt_LOG.h > @@ -8,6 +8,7 @@ > #define XT_LOG_UID 0x08 /* Log UID owning local socket */ > #define XT_LOG_NFLOG 0x10 /* Unsupported, don't reuse */ > #define XT_LOG_MACDECODE 0x20 /* Decode MAC header */ > +#define XT_LOG_ADD_TIMESTAMP 0x40 /* Add a timestamp */ > #define XT_LOG_MASK 0x6f > > struct xt_log_info { > diff --git a/net/netfilter/xt_LOG.c b/net/netfilter/xt_LOG.c > index 211d341..bd59dfd 100644 > --- a/net/netfilter/xt_LOG.c > +++ b/net/netfilter/xt_LOG.c > @@ -490,6 +490,16 @@ log_packet_common(struct sbuff *m, > if (loginfo->type == NF_LOG_TYPE_LOG) > sb_add(m, "<%d>", loginfo->u.log.level); > > + if (loginfo->u.log.logflags & XT_LOG_ADD_TIMESTAMP) { > + static struct timespec tv; Please remove 'static', its unsafe on SMP and useless anyway. > + unsigned int msec; > + > + getnstimeofday(&tv); > + msec = tv.tv_nsec; > + do_div(msec, 1000000); why do_div() ? Its not an u64 Just use tv.tv_nsec / NSEC_PER_MSEC > + sb_add(m, "TIMESTAMP=%li.%03li ", tv.tv_sec, msec); > + } > + > sb_add(m, "%sIN=%s OUT=%s ", prefix, in ? in->name : "", > out ? out->name : ""); > #ifdef CONFIG_BRIDGE_NETFILTER -- To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html