From patchwork Tue Feb 14 23:36:13 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Richard Weinberger X-Patchwork-Id: 141212 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 2BBFCB6FAF for ; Wed, 15 Feb 2012 10:37:28 +1100 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1761411Ab2BNXg5 (ORCPT ); Tue, 14 Feb 2012 18:36:57 -0500 Received: from a.ns.miles-group.at ([95.130.255.143]:47838 "EHLO radon.swed.at" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1761364Ab2BNXgY (ORCPT ); Tue, 14 Feb 2012 18:36:24 -0500 Received: (qmail 17574 invoked by uid 89); 14 Feb 2012 23:36:22 -0000 Received: by simscan 1.3.1 ppid: 17549, pid: 17571, t: 0.1213s scanners: attach: 1.3.1 clamav: 0.96.5/m:53 Received: from unknown (HELO raccoon.haslach.nod.at) (richard@nod.at@91.114.247.81) by radon.swed.at with ESMTPA; 14 Feb 2012 23:36:22 -0000 From: Richard Weinberger To: netfilter-devel@vger.kernel.org Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, eric.dumazet@gmail.com, jengelh@medozas.de, rostedt@goodmis.org, pablo@netfilter.org, basti@b-bl.de, Richard Weinberger Subject: [PATCH 2/2] Netfilter: xt_LOG: Add timestamp support Date: Wed, 15 Feb 2012 00:36:13 +0100 Message-Id: <1329262573-22048-2-git-send-email-richard@nod.at> X-Mailer: git-send-email 1.7.7.3 In-Reply-To: <1329262573-22048-1-git-send-email-richard@nod.at> References: <1329262573-22048-1-git-send-email-richard@nod.at> Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Using XT_LOG_ADD_TIMESTAMP it is possible to have a timestamp directly in the log message. Signed-off-by: Richard Weinberger --- 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; + unsigned int msec; + + getnstimeofday(&tv); + msec = tv.tv_nsec; + do_div(msec, 1000000); + 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