From: Pablo Neira Ayuso <pablo@netfilter.org>
To: Gao feng <gaofeng@cn.fujitsu.com>
Cc: netfilter-devel@vger.kernel.org
Subject: Re: [PATCH nf-next v2 03/10] netfilter: ebt_log: add net namespace support for ebt_log
Date: Fri, 5 Apr 2013 20:32:43 +0200 [thread overview]
Message-ID: <20130405183243.GC4853@localhost> (raw)
In-Reply-To: <1364205048-32632-3-git-send-email-gaofeng@cn.fujitsu.com>
On Mon, Mar 25, 2013 at 05:50:41PM +0800, Gao feng wrote:
> Add pernet_operations for ebt_log, in pernet_ops,
> we call nf_log_set/unset to set/unset nf_loggers
> of per net.
>
> Because the syslog ns has not been implemented,
> we don't want the container DDOS the host's syslog.
> so only enable ebt_log in init_net and wait for
> syslog ns.
Applied with change.
> Signed-off-by: Gao feng <gaofeng@cn.fujitsu.com>
> ---
> net/bridge/netfilter/ebt_log.c | 24 +++++++++++++++++++++++-
> 1 file changed, 23 insertions(+), 1 deletion(-)
>
> diff --git a/net/bridge/netfilter/ebt_log.c b/net/bridge/netfilter/ebt_log.c
> index 08e5ea5..cd465d1 100644
> --- a/net/bridge/netfilter/ebt_log.c
> +++ b/net/bridge/netfilter/ebt_log.c
> @@ -78,6 +78,10 @@ ebt_log_packet(u_int8_t pf, unsigned int hooknum,
> const char *prefix)
> {
> unsigned int bitmask;
> + struct net *net = dev_net(in ? in : out);
> +
Added a comment here to explicitly recall that we depend on syslog ns
support to remove these two lines below.
> + if (!net_eq(net, &init_net))
> + return;
>
> spin_lock_bh(&ebt_log_lock);
> printk(KERN_SOH "%c%s IN=%s OUT=%s MAC source = %pM MAC dest = %pM proto = 0x%04x",
> @@ -207,6 +211,22 @@ static struct nf_logger ebt_log_logger __read_mostly = {
> .me = THIS_MODULE,
> };
>
> +static int __net_init ebt_log_net_init(struct net *net)
> +{
> + nf_log_set(net, NFPROTO_BRIDGE, &ebt_log_logger);
> + return 0;
> +}
> +
> +static void __net_exit ebt_log_net_fini(struct net *net)
> +{
> + nf_log_unset(net, &ebt_log_logger);
> +}
> +
> +static struct pernet_operations ebt_log_net_ops = {
> + .init = ebt_log_net_init,
> + .exit = ebt_log_net_fini,
> +};
> +
> static int __init ebt_log_init(void)
> {
> int ret;
> @@ -214,12 +234,14 @@ static int __init ebt_log_init(void)
> ret = xt_register_target(&ebt_log_tg_reg);
> if (ret < 0)
> return ret;
> +
> nf_log_register(NFPROTO_BRIDGE, &ebt_log_logger);
> - return 0;
> + return register_pernet_subsys(&ebt_log_net_ops);
You have to unroll in case register_pernet_subsys, I fixed this.
> }
>
> static void __exit ebt_log_fini(void)
> {
> + unregister_pernet_subsys(&ebt_log_net_ops);
> nf_log_unregister(&ebt_log_logger);
> xt_unregister_target(&ebt_log_tg_reg);
> }
> --
> 1.7.11.7
>
next prev parent reply other threads:[~2013-04-05 18:32 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-03-25 9:50 [PATCH nf-next v2 01/10] netfilter: make /proc/net/netfilter pernet Gao feng
2013-03-25 9:50 ` [PATCH nf-next v2 02/10] netfilter: nf_log: prepar net namespace support for nf_log Gao feng
2013-04-05 18:30 ` Pablo Neira Ayuso
2013-04-08 2:46 ` Gao feng
2013-03-25 9:50 ` [PATCH nf-next v2 03/10] netfilter: ebt_log: add net namespace support for ebt_log Gao feng
2013-04-05 18:32 ` Pablo Neira Ayuso [this message]
2013-04-08 2:50 ` Gao feng
2013-03-25 9:50 ` [PATCH nf-next v2 04/10] netfilter: xt_LOG: add net namespace support for xt_LOG Gao feng
2013-04-05 18:33 ` Pablo Neira Ayuso
2013-04-08 2:50 ` Gao feng
2013-03-25 9:50 ` [PATCH nf-next v2 05/10] netfilter: ebt_ulog: add net namesapce support for ebt_ulog Gao feng
2013-04-05 18:34 ` Pablo Neira Ayuso
2013-03-25 9:50 ` [PATCH nf-next v2 06/10] netfilter: ipt_ulog: add net namespace support for ipt_ulog Gao feng
2013-04-05 18:35 ` Pablo Neira Ayuso
2013-03-25 9:50 ` [PATCH nf-next v2 07/10] netfilter: nfnetlink_log: add net namespace support for nfnetlink_log Gao feng
2013-04-05 18:38 ` Pablo Neira Ayuso
2013-03-25 9:50 ` [PATCH nf-next v2 08/10] netfilter: nf_log: enable nflog in un-init net namespace Gao feng
2013-04-05 18:38 ` Pablo Neira Ayuso
2013-03-25 9:50 ` [PATCH nf-next v2 09/10] netfilter: nfnetlink_queue: add net namespace support for nfnetlink_queue Gao feng
2013-04-05 18:40 ` Pablo Neira Ayuso
2013-03-25 9:50 ` [PATCH nf-next v2 10/10] netfilter: remove useless variable proc_net_netfilter Gao feng
2013-04-05 18:45 ` Pablo Neira Ayuso
2013-04-08 2:56 ` Gao feng
2013-04-05 17:44 ` [PATCH nf-next v2 01/10] netfilter: make /proc/net/netfilter pernet Pablo Neira Ayuso
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20130405183243.GC4853@localhost \
--to=pablo@netfilter.org \
--cc=gaofeng@cn.fujitsu.com \
--cc=netfilter-devel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.