lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <YzYLM7i1Id4uvRmX@lore-desk>
Date:   Thu, 29 Sep 2022 23:16:35 +0200
From:   Lorenzo Bianconi <lorenzo@...nel.org>
To:     Pablo Neira Ayuso <pablo@...filter.org>
Cc:     Martin KaFai Lau <martin.lau@...ux.dev>, netdev@...r.kernel.org,
        ast@...nel.org, daniel@...earbox.net, andrii@...nel.org,
        davem@...emloft.net, kuba@...nel.org, edumazet@...gle.com,
        pabeni@...hat.com, fw@...len.de, netfilter-devel@...r.kernel.org,
        lorenzo.bianconi@...hat.com, brouer@...hat.com, toke@...hat.com,
        memxor@...il.com, nathan@...nel.org, bpf@...r.kernel.org
Subject: Re: [PATCH bpf-next] net: netfilter: move bpf_ct_set_nat_info kfunc
 in nf_nat_bpf.c

On Sep 29, Pablo Neira Ayuso wrote:
> On Thu, Sep 29, 2022 at 12:13:45PM -0700, Martin KaFai Lau wrote:
> > On 9/25/22 6:26 AM, Lorenzo Bianconi wrote:
> > > Remove circular dependency between nf_nat module and nf_conntrack one
> > > moving bpf_ct_set_nat_info kfunc in nf_nat_bpf.c
> > > 
> > > Fixes: 0fabd2aa199f ("net: netfilter: add bpf_ct_set_nat_info kfunc helper")
> > > Suggested-by: Kumar Kartikeya Dwivedi <memxor@...il.com>
> > > Tested-by: Nathan Chancellor <nathan@...nel.org>
> > > Signed-off-by: Lorenzo Bianconi <lorenzo@...nel.org>
> > > ---
> > >   include/net/netfilter/nf_conntrack_bpf.h |  5 ++
> > >   include/net/netfilter/nf_nat.h           | 14 +++++
> > >   net/netfilter/Makefile                   |  6 ++
> > >   net/netfilter/nf_conntrack_bpf.c         | 49 ---------------
> > >   net/netfilter/nf_nat_bpf.c               | 79 ++++++++++++++++++++++++
> > >   net/netfilter/nf_nat_core.c              |  2 +-
> > >   6 files changed, 105 insertions(+), 50 deletions(-)
> > >   create mode 100644 net/netfilter/nf_nat_bpf.c
> > > 
> > > diff --git a/include/net/netfilter/nf_conntrack_bpf.h b/include/net/netfilter/nf_conntrack_bpf.h
> > > index c8b80add1142..1ce46e406062 100644
> > > --- a/include/net/netfilter/nf_conntrack_bpf.h
> > > +++ b/include/net/netfilter/nf_conntrack_bpf.h
> > > @@ -4,6 +4,11 @@
> > >   #define _NF_CONNTRACK_BPF_H
> > >   #include <linux/kconfig.h>
> > > +#include <net/netfilter/nf_conntrack.h>
> > > +
> > > +struct nf_conn___init {
> > > +	struct nf_conn ct;
> > > +};
> > >   #if (IS_BUILTIN(CONFIG_NF_CONNTRACK) && IS_ENABLED(CONFIG_DEBUG_INFO_BTF)) || \
> > >       (IS_MODULE(CONFIG_NF_CONNTRACK) && IS_ENABLED(CONFIG_DEBUG_INFO_BTF_MODULES))
> > > diff --git a/include/net/netfilter/nf_nat.h b/include/net/netfilter/nf_nat.h
> > > index e9eb01e99d2f..cd084059a953 100644
> > > --- a/include/net/netfilter/nf_nat.h
> > > +++ b/include/net/netfilter/nf_nat.h
> > > @@ -68,6 +68,20 @@ static inline bool nf_nat_oif_changed(unsigned int hooknum,
> > >   #endif
> > >   }
> > > +#if (IS_BUILTIN(CONFIG_NF_NAT) && IS_ENABLED(CONFIG_DEBUG_INFO_BTF)) || \
> > > +    (IS_MODULE(CONFIG_NF_NAT) && IS_ENABLED(CONFIG_DEBUG_INFO_BTF_MODULES))
> > > +
> > > +extern int register_nf_nat_bpf(void);
> > > +
> > > +#else
> > > +
> > > +static inline int register_nf_nat_bpf(void)
> > > +{
> > > +	return 0;
> > > +}
> > > +
> > > +#endif
> > > +
> > 
> > This looks similar to the ones in nf_conntrack_bpf.h.  Does it belong there
> > better?  No strong opinion here.
> > 
> > The change looks good to me.  Can someone from the netfilter team ack this
> > piece also?
> 
> Could you move this into nf_conntrack_bpf.h ?

ack, I will fix it in v2.

Regards,
Lorenzo


Download attachment "signature.asc" of type "application/pgp-signature" (229 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ