summaryrefslogtreecommitdiff
path: root/include/net/netfilter/nf_tables_core.h
diff options
context:
space:
mode:
authorPatrick McHardy <kaber@trash.net>2013-10-10 23:35:40 +0200
committerPablo Neira Ayuso <pablo@netfilter.org>2013-10-14 17:16:09 +0200
commitcb7dbfd0390c9e244339f3270fe8649568241812 (patch)
tree3e4587f757c08b59e936d4f45d0d2e7c25b3f93e /include/net/netfilter/nf_tables_core.h
parentef1f7df9170dbd875ce198ba84e6ab80f6fc139e (diff)
netfilter: nf_tables: add optimized data comparison for small values
Add an optimized version of nft_data_cmp() that only handles values of to 4 bytes length. This patch includes original Patrick McHardy's patch entitled (nf_tables: inline nft_cmp_fast_eval() into main evaluation loop). Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'include/net/netfilter/nf_tables_core.h')
-rw-r--r--include/net/netfilter/nf_tables_core.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/include/net/netfilter/nf_tables_core.h b/include/net/netfilter/nf_tables_core.h
index 283396c916e0..3df6a9be3bdd 100644
--- a/include/net/netfilter/nf_tables_core.h
+++ b/include/net/netfilter/nf_tables_core.h
@@ -7,6 +7,14 @@ extern void nf_tables_core_module_exit(void);
extern int nft_immediate_module_init(void);
extern void nft_immediate_module_exit(void);
+struct nft_cmp_fast_expr {
+ u32 data;
+ enum nft_registers sreg:8;
+ u8 len;
+};
+
+extern const struct nft_expr_ops nft_cmp_fast_ops;
+
extern int nft_cmp_module_init(void);
extern void nft_cmp_module_exit(void);