]> 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)
commit635f76328fb56412d295c2009c04870f50544916
treeac15a3cbf8c4a05b8b1919cf195189e00c3a2956
parent5cfdc1810140c1e67caea41bfe566dc94f7ae22d
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