netfilter-devel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH nf-next,v3 0/6] nf_tables inner tunnel header match support
@ 2022-10-07  9:16 Pablo Neira Ayuso
  2022-10-07  9:16 ` [PATCH nf-next,v3 1/6] netfilter: nft_payload: access GRE payload via inner offset Pablo Neira Ayuso
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: Pablo Neira Ayuso @ 2022-10-07  9:16 UTC (permalink / raw)
  To: netfilter-devel

Hi,

This is version 3 for this patchset.

The inner expression provides a packet parser for the tunneled packet
which uses a userspace description of the expected inner headers. Then,
the inner expression (only payload and meta supported at this stage) is
used to match on the inner header protocol fields, using the new link,
network and transport offsets as well as inner metadata.

This patchset adds support for VxLAN, Geneve, GRE and IPIP. More tunnel
protocol can be supported via userspace updates only.

Changes in this v3:

Patch #1 handle GREv0 and GREv1 (PPTP) and variable size header depending
         on flags.
Patch #2 no changes
Patch #3 no changes
Patch #4 update existing percpu tunnel context only if header parser fully
         succeeds, to not leave tunnel context in inconsistent state.
Patch #5 no changes.
Patch #6 no changes.

Pablo Neira Ayuso (6):
  netfilter: nft_payload: access GRE payload via inner offset
  netfilter: nft_payload: access ipip payload for inner offset
  netfilter: nft_inner: support for inner tunnel header matching
  netfilter: nft_inner: add percpu inner context
  netfilter: nft_meta: add inner match support
  netfilter: nft_inner: add geneve support

 include/net/netfilter/nf_tables.h        |   6 +
 include/net/netfilter/nf_tables_core.h   |  25 ++
 include/net/netfilter/nft_meta.h         |   6 +
 include/uapi/linux/netfilter/nf_tables.h |  27 ++
 net/netfilter/Makefile                   |   3 +-
 net/netfilter/nf_tables_api.c            |  37 +++
 net/netfilter/nf_tables_core.c           |   1 +
 net/netfilter/nft_inner.c                | 368 +++++++++++++++++++++++
 net/netfilter/nft_meta.c                 |  62 ++++
 net/netfilter/nft_payload.c              | 130 +++++++-
 10 files changed, 663 insertions(+), 2 deletions(-)
 create mode 100644 net/netfilter/nft_inner.c

--
2.30.2


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2022-10-07  9:16 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-10-07  9:16 [PATCH nf-next,v3 0/6] nf_tables inner tunnel header match support Pablo Neira Ayuso
2022-10-07  9:16 ` [PATCH nf-next,v3 1/6] netfilter: nft_payload: access GRE payload via inner offset Pablo Neira Ayuso
2022-10-07  9:16 ` [PATCH nf-next,v3 2/6] netfilter: nft_payload: access ipip payload for " Pablo Neira Ayuso
2022-10-07  9:16 ` [PATCH nf-next,v3 3/6] netfilter: nft_inner: support for inner tunnel header matching Pablo Neira Ayuso
2022-10-07  9:16 ` [PATCH nf-next,v3 4/6] netfilter: nft_inner: add percpu inner context Pablo Neira Ayuso
2022-10-07  9:16 ` [PATCH nf-next,v3 5/6] netfilter: nft_meta: add inner match support Pablo Neira Ayuso
2022-10-07  9:16 ` [PATCH nf-next,v3 6/6] netfilter: nft_inner: add geneve support Pablo Neira Ayuso

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).