summaryrefslogtreecommitdiffstats
path: root/include/statement.h
diff options
context:
space:
mode:
authorPablo Neira Ayuso <pablo@netfilter.org>2015-11-24 21:26:27 +0100
committerPablo Neira Ayuso <pablo@netfilter.org>2016-01-31 22:32:18 +0100
commit6f137a2db3419e961e41eda28668cd99e8a3f2e2 (patch)
treea53b45962d657c1c02363d9b248aa944840a9134 /include/statement.h
parent8a236ef68cd43af81fac10c5b58658514273a14e (diff)
src: add fwd statement for netdev
This patch add support for the forward statement, only available at the netdev family. # nft add table netdev filter # nft add chain netdev filter ingress { type filter hook ingress device eth0 priority 0\; } # nft add rule netdev filter ingress fwd to dummy0 Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'include/statement.h')
-rw-r--r--include/statement.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/include/statement.h b/include/statement.h
index 6be3a240..102d95f1 100644
--- a/include/statement.h
+++ b/include/statement.h
@@ -122,6 +122,13 @@ struct dup_stmt {
struct stmt *dup_stmt_alloc(const struct location *loc);
uint32_t dup_stmt_type(const char *type);
+struct fwd_stmt {
+ struct expr *to;
+};
+
+struct stmt *fwd_stmt_alloc(const struct location *loc);
+uint32_t fwd_stmt_type(const char *type);
+
struct set_stmt {
struct expr *set;
struct expr *key;
@@ -149,6 +156,7 @@ extern struct stmt *set_stmt_alloc(const struct location *loc);
* @STMT_CT: conntrack statement
* @STMT_SET: set statement
* @STMT_DUP: dup statement
+ * @STMT_FWD: forward statement
*/
enum stmt_types {
STMT_INVALID,
@@ -167,6 +175,7 @@ enum stmt_types {
STMT_CT,
STMT_SET,
STMT_DUP,
+ STMT_FWD,
};
/**
@@ -219,6 +228,7 @@ struct stmt {
struct ct_stmt ct;
struct set_stmt set;
struct dup_stmt dup;
+ struct fwd_stmt fwd;
};
};