From: Pablo Neira Ayuso <pablo@netfilter.org>
To: Daniel Borkmann <daniel@iogearbox.net>
Cc: tgraf@suug.ch, challa@noironetworks.com, netfilter-devel@vger.kernel.org
Subject: Re: [PATCH nf-next v2 1/3] netfilter: nf_conntrack: push zone object into functions
Date: Wed, 15 Jul 2015 19:35:58 +0200 [thread overview]
Message-ID: <20150715173558.GA7161@salvia> (raw)
In-Reply-To: <3a45e81237cd8248a025dc772a9dd9ef17c73b1b.1436574843.git.daniel@iogearbox.net>
On Sat, Jul 11, 2015 at 03:14:05AM +0200, Daniel Borkmann wrote:
> This patch replaces the zone id which is pushed down into functions
> with the actual zone object. It's a bigger one-time change, but
> needed for later on extending zones with a direction parameter, and
> thus decoupling this additional information from all call-sites.
>
> It was suggested during NFWS to let the nf_ct_zone() helper store
> the meta data on the stack as we currently do, but in a similar
> fashion as skb_header_pointer() does, so we can avoid keeping track
> of the object lifetime. In general, dealing directly with the object
> also facilitates for adding other possible meta data in future.
>
> No functional changes in this patch.
[...]
> diff --git a/net/ipv4/netfilter/nf_conntrack_proto_icmp.c b/net/ipv4/netfilter/nf_conntrack_proto_icmp.c
> index 80d5554..75f7860 100644
> --- a/net/ipv4/netfilter/nf_conntrack_proto_icmp.c
> +++ b/net/ipv4/netfilter/nf_conntrack_proto_icmp.c
> @@ -134,9 +134,10 @@ icmp_error_message(struct net *net, struct nf_conn *tmpl, struct sk_buff *skb,
> struct nf_conntrack_tuple innertuple, origtuple;
> const struct nf_conntrack_l4proto *innerproto;
> const struct nf_conntrack_tuple_hash *h;
> - u16 zone = tmpl ? nf_ct_zone(tmpl) : NF_CT_DEFAULT_ZONE;
> + struct nf_conntrack_zone *zone, __zone;
>
> NF_CT_ASSERT(skb->nfct == NULL);
> + zone = nf_ct_zone_tmpl(tmpl, &__zone);
This was one possible idea, but I also suggested to have a dummy:
static const struct nf_ct_zone nf_ct_zone_dflt = {
.zone_id = NF_CT_DEFAULT_ZONE,
};
that we return in case no zone extension is set, and use it instead of
your nf_ct_zone_dflt() function.
next prev parent reply other threads:[~2015-07-15 17:30 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-07-11 1:14 [PATCH nf-next v2 0/3] Netfilter zone directions Daniel Borkmann
2015-07-11 1:14 ` [PATCH nf-next v2 1/3] netfilter: nf_conntrack: push zone object into functions Daniel Borkmann
2015-07-15 17:35 ` Pablo Neira Ayuso [this message]
2015-07-15 19:16 ` Daniel Borkmann
2015-07-11 1:14 ` [PATCH nf-next v2 2/3] netfilter: nf_conntrack: add direction support for zones Daniel Borkmann
2015-07-11 1:14 ` [PATCH nf-next v2 3/3] netfilter: nf_conntrack: add efficient mark to zone mapping Daniel Borkmann
2015-07-15 17:50 ` Pablo Neira Ayuso
2015-07-15 20:04 ` Daniel Borkmann
2015-07-20 16:18 ` Daniel Borkmann
2015-07-20 17:03 ` Pablo Neira Ayuso
2015-07-20 17:27 ` Daniel Borkmann
2015-07-20 18:24 ` Pablo Neira Ayuso
2015-07-20 20:05 ` Daniel Borkmann
2015-07-21 7:37 ` Pablo Neira Ayuso
2015-07-21 9:08 ` Daniel Borkmann
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=20150715173558.GA7161@salvia \
--to=pablo@netfilter.org \
--cc=challa@noironetworks.com \
--cc=daniel@iogearbox.net \
--cc=netfilter-devel@vger.kernel.org \
--cc=tgraf@suug.ch \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).