]> git.baikalelectronics.ru Git - kernel.git/commit
netfilter: nf_tables: expression ops overloading
authorPatrick McHardy <kaber@trash.net>
Thu, 10 Oct 2013 09:41:20 +0000 (11:41 +0200)
committerPablo Neira Ayuso <pablo@netfilter.org>
Mon, 14 Oct 2013 15:16:08 +0000 (17:16 +0200)
commit660c6cbda62b55f01f4a3cafee0dc3e98790c3c1
treeac15a3cbf8c4a05b8b1919cf195189e00c3a2956
parent2f367ca4974bd2259510f767c39a88dc4365630a
netfilter: nf_tables: expression ops overloading

Split the expression ops into two parts and support overloading of
the runtime expression ops based on the requested function through
a ->select_ops() callback.

This can be used to provide optimized implementations, for instance
for loading small aligned amounts of data from the packet or inlining
frequently used operations into the main evaluation loop.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
17 files changed:
include/net/netfilter/nf_tables.h
net/ipv4/netfilter/nf_table_nat_ipv4.c
net/ipv4/netfilter/nft_reject_ipv4.c
net/netfilter/nf_tables_api.c
net/netfilter/nft_bitwise.c
net/netfilter/nft_byteorder.c
net/netfilter/nft_cmp.c
net/netfilter/nft_counter.c
net/netfilter/nft_ct.c
net/netfilter/nft_expr_template.c
net/netfilter/nft_exthdr.c
net/netfilter/nft_immediate.c
net/netfilter/nft_limit.c
net/netfilter/nft_log.c
net/netfilter/nft_lookup.c
net/netfilter/nft_meta.c
net/netfilter/nft_payload.c