All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH nft 0/10] nftables remove use of meta nfproto
@ 2017-09-27 18:16 Florian Westphal
  2017-09-27 18:16 ` [PATCH nft 01/10] src: add alternate syntax for ct saddr Florian Westphal
                   ` (10 more replies)
  0 siblings, 11 replies; 12+ messages in thread
From: Florian Westphal @ 2017-09-27 18:16 UTC (permalink / raw)
  To: netfilter-devel

inet family (and others, e.g. bridge) lack context to figure
out the layer 3 address type.

examples:
ct original saddr $addr
rt nexthop $addr

We can't use $addr, because it might be a set reference, e.g.

ct original saddr @whitelist

currently implemented workaround is to use 'meta nfproto'
to provide the l3 context, e.g.

meta nfproto ip rt nexthop 10.2.3.4

i.e. users need to fill dependency manually.

Pablo suggested to instead specify ip saddr, ip6 saddr:

ct original ip saddr $address

and then let nft handle the dependency injection.

This series does just that.

Old syntax is preserved.

 doc/nft.xml                |   23 ++++++++---
 include/ct.h               |    3 -
 include/expression.h       |    2 
 src/ct.c                   |   70 ++++++++++++++++++++++++----------
 src/evaluate.c             |   92 +++++++++++++++++++++++++++++++++++----------
 src/netlink_delinearize.c  |   52 +++++++++++--------------
 src/parser_bison.y         |   42 ++++++++++++++++++--
 src/rt.c                   |   14 ++++++
 tests/py/bridge/icmpX.t    |    4 -
 tests/py/inet/ct.t         |    7 ++-
 tests/py/inet/ct.t.payload |    4 -
 tests/py/inet/icmpX.t      |    4 -
 tests/py/inet/rt.t         |   10 +++-
 tests/py/inet/rt.t.payload |    4 -
 tests/py/ip/ct.t           |   18 ++++----
 tests/py/ip/ct.t.payload   |   16 +++----
 tests/py/ip/rt.t           |    3 -
 tests/py/ip6/rt0.t         |    2 
 18 files changed, 260 insertions(+), 110 deletions(-)

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

end of thread, other threads:[~2017-09-29 10:25 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-09-27 18:16 [PATCH nft 0/10] nftables remove use of meta nfproto Florian Westphal
2017-09-27 18:16 ` [PATCH nft 01/10] src: add alternate syntax for ct saddr Florian Westphal
2017-09-27 18:16 ` [PATCH nft 02/10] src: ct: store proto base of ct key, if any Florian Westphal
2017-09-27 18:16 ` [PATCH nft 03/10] src: ct: add eval part to inject dependencies for ct saddr/daddr Florian Westphal
2017-09-27 18:16 ` [PATCH nft 04/10] src: unifiy meta and ct postprocessing Florian Westphal
2017-09-27 18:16 ` [PATCH nft 05/10] tests: update inet/bridge icmp test case Florian Westphal
2017-09-27 18:16 ` [PATCH nft 06/10] src: ct: print nfproto name for some header fields Florian Westphal
2017-09-27 18:16 ` [PATCH nft 07/10] tests: ct: adjust test case commands Florian Westphal
2017-09-27 18:16 ` [PATCH nft 08/10] src: rt: add keyword distinction for nexthop vs nexthop6 Florian Westphal
2017-09-27 18:16 ` [PATCH nft 09/10] tests: rt: fix test cases Florian Westphal
2017-09-27 18:16 ` [PATCH nft 10/10] doc: update man page Florian Westphal
2017-09-29 10:24 ` [PATCH nft 0/10] nftables remove use of meta nfproto Pablo Neira Ayuso

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.