netfilter-devel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Pablo Neira Ayuso <pablo@netfilter.org>
To: netfilter-devel@vger.kernel.org
Subject: [PATCH nft 0/6,v2] support for vxlan matching
Date: Fri, 30 Sep 2022 15:02:42 +0200	[thread overview]
Message-ID: <20220930130248.416386-1-pablo@netfilter.org> (raw)

Hi,

This is another round for the inner header matching support for vxlan.

This round includes updates for tests/py and tests/shell.

Several fixes since the previous round:

- incorrect ruleset listing due to incorrect logic in has_inner_desc().
- a few compilation warnings.
- use NFPROTO_BRIDGE as family base for inner matching, so proto_eth
  is used and NFT_META_PROTOCOL dependencies for matching on IPv4/IPv6
  is generated.
- concatenation now works.
- use of vxlan in set statements.
- missing vxlan flags support (reported by Simon G. Trajkovski)

Pablo Neira Ayuso (6):
  src: add eval_proto_ctx()
  src: add dl_proto_ctx()
  src: add vxlan matching support
  tests: py: add vxlan tests
  tests: shell: add vxlan set tests
  src: display (inner) tag in --debug=proto-ctx

 include/expression.h                         |   2 +
 include/linux/netfilter/nf_tables.h          |  26 ++
 include/netlink.h                            |  11 +-
 include/payload.h                            |   2 +
 include/proto.h                              |  29 ++-
 include/rule.h                               |   3 +-
 src/evaluate.c                               | 261 +++++++++++++------
 src/expression.c                             |   1 +
 src/meta.c                                   |  21 +-
 src/netlink.c                                |   2 +-
 src/netlink_delinearize.c                    | 259 ++++++++++++++----
 src/netlink_linearize.c                      |  80 +++++-
 src/parser_bison.y                           |  53 ++++
 src/payload.c                                |  95 +++++--
 src/proto.c                                  |  59 ++++-
 src/rule.c                                   |   3 +-
 src/scanner.l                                |   3 +
 src/xt.c                                     |   8 +-
 tests/py/inet/vxlan.t                        |  23 ++
 tests/py/inet/vxlan.t.payload                | 114 ++++++++
 tests/shell/testcases/sets/dumps/inner_0.nft |  18 ++
 tests/shell/testcases/sets/inner_0           |  25 ++
 22 files changed, 926 insertions(+), 172 deletions(-)
 create mode 100644 tests/py/inet/vxlan.t
 create mode 100644 tests/py/inet/vxlan.t.payload
 create mode 100644 tests/shell/testcases/sets/dumps/inner_0.nft
 create mode 100755 tests/shell/testcases/sets/inner_0

-- 
2.30.2


             reply	other threads:[~2022-09-30 13:02 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-09-30 13:02 Pablo Neira Ayuso [this message]
2022-09-30 13:02 ` [PATCH nft 1/6] src: add eval_proto_ctx() Pablo Neira Ayuso
2022-09-30 13:02 ` [PATCH nft 2/6] src: add dl_proto_ctx() Pablo Neira Ayuso
2022-09-30 13:02 ` [PATCH nft 3/6] src: add vxlan matching support Pablo Neira Ayuso
2022-09-30 13:02 ` [PATCH nft 4/6] tests: py: add vxlan tests Pablo Neira Ayuso
2022-09-30 13:02 ` [PATCH nft 5/6] tests: shell: add vxlan set tests Pablo Neira Ayuso
2022-09-30 13:02 ` [PATCH nft 6/6] src: display (inner) tag in --debug=proto-ctx 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=20220930130248.416386-1-pablo@netfilter.org \
    --to=pablo@netfilter.org \
    --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 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).