diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/internal/bitops.h | 13 | ||||
-rw-r--r-- | include/internal/extern.h | 5 | ||||
-rw-r--r-- | include/internal/internal.h | 3 |
3 files changed, 20 insertions, 1 deletions
diff --git a/include/internal/bitops.h b/include/internal/bitops.h index 0c1fde8..7ae566b 100644 --- a/include/internal/bitops.h +++ b/include/internal/bitops.h @@ -60,4 +60,17 @@ test_bitmask_u32(const uint32_t *buf1, const uint32_t *buf2, int len) return 1; } +static inline int +test_bitmask_u32_or(const uint32_t *buf1, const uint32_t *buf2, int len) +{ + int i; + + for (i=0; i<len; i++) { + if (buf1[i] & buf2[i]) { + return 1; + } + } + return 0; +} + #endif diff --git a/include/internal/extern.h b/include/internal/extern.h index fb9ca54..405c9ca 100644 --- a/include/internal/extern.h +++ b/include/internal/extern.h @@ -11,7 +11,10 @@ extern const get_attr_grp get_attr_grp_array[]; extern const set_exp_attr set_exp_attr_array[]; extern const get_exp_attr get_exp_attr_array[]; -extern const uint32_t attr_grp_bitmask[ATTR_GRP_MAX][__NFCT_BITSET]; +extern const struct attr_grp_bitmask { + uint32_t bitmask[__NFCT_BITSET]; + uint32_t type; +} attr_grp_bitmask[ATTR_GRP_MAX]; extern const set_filter_dump_attr set_filter_dump_attr_array[]; diff --git a/include/internal/internal.h b/include/internal/internal.h index b2b1c43..aaf6bd4 100644 --- a/include/internal/internal.h +++ b/include/internal/internal.h @@ -82,4 +82,7 @@ struct nf_ct_tcp_flags { u_int8_t mask; }; +#define NFCT_BITMASK_AND 0 +#define NFCT_BITMASK_OR 1 + #endif |