summaryrefslogtreecommitdiffstats
path: root/include/internal
diff options
context:
space:
mode:
authorFlorian Westphal <fw@strlen.de>2012-11-13 12:21:08 +0100
committerFlorian Westphal <fw@strlen.de>2013-05-06 20:57:52 +0200
commit013a5284c901a6ce80320f499685b89d15eeed9e (patch)
tree003a0a7606823ecd6f2a97d782aca5263a2005a1 /include/internal
parent706064d8b9423df0d22e9ebba092ec2fb14b38aa (diff)
api: add nfct_bitmask object
In order to use generic getter/setter API with upcoming conntrack label extension, add helper functions to set/test/unset bits in a vector of arbitrary size. Conntrack labels will then be encoded via nfct_bitmask object. Original idea from Pablo Neira Ayuso. Signed-off-by: Florian Westphal <fw@strlen.de>
Diffstat (limited to 'include/internal')
-rw-r--r--include/internal/bitops.h2
-rw-r--r--include/internal/object.h8
2 files changed, 10 insertions, 0 deletions
diff --git a/include/internal/bitops.h b/include/internal/bitops.h
index 7ae566b..aefff0e 100644
--- a/include/internal/bitops.h
+++ b/include/internal/bitops.h
@@ -73,4 +73,6 @@ test_bitmask_u32_or(const uint32_t *buf1, const uint32_t *buf2, int len)
return 0;
}
+#define DIV_ROUND_UP(n,d) (((n) + (d) - 1) / (d))
+
#endif
diff --git a/include/internal/object.h b/include/internal/object.h
index 443e800..609265d 100644
--- a/include/internal/object.h
+++ b/include/internal/object.h
@@ -297,4 +297,12 @@ struct nf_expect {
u_int32_t set[1];
};
+/*
+ * bitmask object
+ */
+struct nfct_bitmask {
+ unsigned int words;
+ uint32_t bits[];
+};
+
#endif