Message ID | 1330989588-26833-7-git-send-email-richard@nod.at |
---|---|
State | Not Applicable, archived |
Delegated to: | David Miller |
Headers | show |
On Tue, Mar 06, 2012 at 12:19:48AM +0100, Richard Weinberger wrote: > Using XT_LOG_ADD_TIMESTAMP it is possible to have a timestamp > directly in the log message. > > Signed-off-by: Richard Weinberger <richard@nod.at> > --- > include/linux/netfilter/xt_LOG.h | 3 ++- > net/netfilter/xt_LOG.c | 8 ++++++++ > 2 files changed, 10 insertions(+), 1 deletions(-) > > diff --git a/include/linux/netfilter/xt_LOG.h b/include/linux/netfilter/xt_LOG.h > index 8ac25e0..9361374 100644 > --- a/include/linux/netfilter/xt_LOG.h > +++ b/include/linux/netfilter/xt_LOG.h > @@ -8,7 +8,8 @@ > #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_MASK 0x2f > +#define XT_LOG_ADD_TIMESTAMP 0x40 /* Add a timestamp */ > +#define XT_LOG_MASK 0x6f > > struct xt_log_info { > unsigned char level; > diff --git a/net/netfilter/xt_LOG.c b/net/netfilter/xt_LOG.c > index f75f2d7..23db206 100644 > --- a/net/netfilter/xt_LOG.c > +++ b/net/netfilter/xt_LOG.c > @@ -499,6 +499,14 @@ 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) { > + struct timespec tv; > + > + getnstimeofday(&tv); > + sb_add(m, "TIMESTAMP=%li.%03u ", tv.tv_sec, > + (unsigned int)tv.tv_nsec / NSEC_PER_MSEC); net/netfilter/xt_LOG.c: In function ‘log_packet_common’: net/netfilter/xt_LOG.c:507:4: warning: format ‘%u’ expects argument of type ‘unsigned int’, but argument 4 has type ‘long int’ [-Wformat] It has to be: sb_add(m, "TIMESTAMP=%li.%03u ", tv.tv_sec, (unsigned int)(tv.tv_nsec / NSEC_PER_MSEC)); ^ ^ I've fixed, no need to resend this patch. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On 07.03.2012 16:29, Pablo Neira Ayuso wrote: > On Tue, Mar 06, 2012 at 12:19:48AM +0100, Richard Weinberger wrote: >> Using XT_LOG_ADD_TIMESTAMP it is possible to have a timestamp >> directly in the log message. >> >> Signed-off-by: Richard Weinberger<richard@nod.at> >> --- >> include/linux/netfilter/xt_LOG.h | 3 ++- >> net/netfilter/xt_LOG.c | 8 ++++++++ >> 2 files changed, 10 insertions(+), 1 deletions(-) >> >> diff --git a/include/linux/netfilter/xt_LOG.h b/include/linux/netfilter/xt_LOG.h >> index 8ac25e0..9361374 100644 >> --- a/include/linux/netfilter/xt_LOG.h >> +++ b/include/linux/netfilter/xt_LOG.h >> @@ -8,7 +8,8 @@ >> #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_MASK 0x2f >> +#define XT_LOG_ADD_TIMESTAMP 0x40 /* Add a timestamp */ >> +#define XT_LOG_MASK 0x6f >> >> struct xt_log_info { >> unsigned char level; >> diff --git a/net/netfilter/xt_LOG.c b/net/netfilter/xt_LOG.c >> index f75f2d7..23db206 100644 >> --- a/net/netfilter/xt_LOG.c >> +++ b/net/netfilter/xt_LOG.c >> @@ -499,6 +499,14 @@ 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) { >> + struct timespec tv; >> + >> + getnstimeofday(&tv); >> + sb_add(m, "TIMESTAMP=%li.%03u ", tv.tv_sec, >> + (unsigned int)tv.tv_nsec / NSEC_PER_MSEC); > > net/netfilter/xt_LOG.c: In function ‘log_packet_common’: > net/netfilter/xt_LOG.c:507:4: warning: format ‘%u’ expects argument of > type ‘unsigned int’, but argument 4 has type ‘long int’ [-Wformat] > > It has to be: > > sb_add(m, "TIMESTAMP=%li.%03u ", tv.tv_sec, > (unsigned int)(tv.tv_nsec / NSEC_PER_MSEC)); > ^ ^ > I've fixed, no need to resend this patch. Which gcc version are you using? I've not seen this warning. :( Thanks, //richard -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Le mercredi 07 mars 2012 à 16:29 +0100, Pablo Neira Ayuso a écrit : > On Tue, Mar 06, 2012 at 12:19:48AM +0100, Richard Weinberger wrote: > > Using XT_LOG_ADD_TIMESTAMP it is possible to have a timestamp > > directly in the log message. > > > > Signed-off-by: Richard Weinberger <richard@nod.at> > > --- > > include/linux/netfilter/xt_LOG.h | 3 ++- > > net/netfilter/xt_LOG.c | 8 ++++++++ > > 2 files changed, 10 insertions(+), 1 deletions(-) > > > > diff --git a/include/linux/netfilter/xt_LOG.h b/include/linux/netfilter/xt_LOG.h > > index 8ac25e0..9361374 100644 > > --- a/include/linux/netfilter/xt_LOG.h > > +++ b/include/linux/netfilter/xt_LOG.h > > @@ -8,7 +8,8 @@ > > #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_MASK 0x2f > > +#define XT_LOG_ADD_TIMESTAMP 0x40 /* Add a timestamp */ > > +#define XT_LOG_MASK 0x6f > > > > struct xt_log_info { > > unsigned char level; > > diff --git a/net/netfilter/xt_LOG.c b/net/netfilter/xt_LOG.c > > index f75f2d7..23db206 100644 > > --- a/net/netfilter/xt_LOG.c > > +++ b/net/netfilter/xt_LOG.c > > @@ -499,6 +499,14 @@ 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) { > > + struct timespec tv; > > + > > + getnstimeofday(&tv); > > + sb_add(m, "TIMESTAMP=%li.%03u ", tv.tv_sec, > > + (unsigned int)tv.tv_nsec / NSEC_PER_MSEC); > > net/netfilter/xt_LOG.c: In function ‘log_packet_common’: > net/netfilter/xt_LOG.c:507:4: warning: format ‘%u’ expects argument of > type ‘unsigned int’, but argument 4 has type ‘long int’ [-Wformat] > > It has to be: > > sb_add(m, "TIMESTAMP=%li.%03u ", tv.tv_sec, > (unsigned int)(tv.tv_nsec / NSEC_PER_MSEC)); > ^ ^ > I've fixed, no need to resend this patch. This is why I submitted the "netfilter: ipt_LOG: add __printf() to sb_add()" patch :) -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/include/linux/netfilter/xt_LOG.h b/include/linux/netfilter/xt_LOG.h index 8ac25e0..9361374 100644 --- a/include/linux/netfilter/xt_LOG.h +++ b/include/linux/netfilter/xt_LOG.h @@ -8,7 +8,8 @@ #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_MASK 0x2f +#define XT_LOG_ADD_TIMESTAMP 0x40 /* Add a timestamp */ +#define XT_LOG_MASK 0x6f struct xt_log_info { unsigned char level; diff --git a/net/netfilter/xt_LOG.c b/net/netfilter/xt_LOG.c index f75f2d7..23db206 100644 --- a/net/netfilter/xt_LOG.c +++ b/net/netfilter/xt_LOG.c @@ -499,6 +499,14 @@ 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) { + struct timespec tv; + + getnstimeofday(&tv); + sb_add(m, "TIMESTAMP=%li.%03u ", tv.tv_sec, + (unsigned int)tv.tv_nsec / NSEC_PER_MSEC); + } + sb_add(m, "%sIN=%s OUT=%s ", prefix, in ? in->name : "", out ? out->name : ""); #ifdef CONFIG_BRIDGE_NETFILTER
Using XT_LOG_ADD_TIMESTAMP it is possible to have a timestamp directly in the log message. Signed-off-by: Richard Weinberger <richard@nod.at> --- include/linux/netfilter/xt_LOG.h | 3 ++- net/netfilter/xt_LOG.c | 8 ++++++++ 2 files changed, 10 insertions(+), 1 deletions(-)