From 013a5284c901a6ce80320f499685b89d15eeed9e Mon Sep 17 00:00:00 2001 From: Florian Westphal Date: Tue, 13 Nov 2012 12:21:08 +0100 Subject: 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 --- include/internal/bitops.h | 2 ++ include/internal/object.h | 8 ++++++++ 2 files changed, 10 insertions(+) (limited to 'include/internal') 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 -- cgit v1.2.3