summaryrefslogtreecommitdiffstats
path: root/include/netlink.h
diff options
context:
space:
mode:
authorPablo Neira Ayuso <pablo@netfilter.org>2014-05-19 12:18:04 +0200
committerPablo Neira Ayuso <pablo@netfilter.org>2014-05-19 12:18:06 +0200
commit337636fc670eaed5c7146f99af8719018f63fe3b (patch)
tree7ddacf7ef5052951706748180432e6c0605319b7 /include/netlink.h
parentef184c4e844eac8c3eda0c8c6fc1370078a9d66a (diff)
src: add set netlink message to the batch
This patch moves the netlink set messages to the batch that contains the rules. This helps to speed up rule-set restoration time by changing the operational. To achieve this, an internal set ID which is unique to the batch is allocated as suggested by Patrick. To retain backward compatibility, nft initially guesses if the kernel supports set in batches. Otherwise, it falls back to the previous (slowier) operational. Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'include/netlink.h')
-rw-r--r--include/netlink.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/netlink.h b/include/netlink.h
index eca4a483..4ef7365f 100644
--- a/include/netlink.h
+++ b/include/netlink.h
@@ -30,6 +30,7 @@ struct netlink_ctx {
struct set *set;
const void *data;
uint32_t seqnum;
+ bool batch_supported;
};
extern struct nft_table *alloc_nft_table(const struct handle *h);
@@ -153,4 +154,6 @@ struct netlink_mon_handler {
};
extern int netlink_monitor(struct netlink_mon_handler *monhandler);
+bool netlink_batch_supported(void);
+
#endif /* NFTABLES_NETLINK_H */