From 6089630f54cecada1fcb91e12ad5eb1811010e48 Mon Sep 17 00:00:00 2001 From: Phil Sutter Date: Wed, 19 Jul 2017 15:05:27 +0200 Subject: segtree: Introduce flag for half-open range elements This flag is required by userspace only, so can live within userdata. It's sole purpose is for 'nft monitor' to detect half-open ranges (which are comprised of a single element only). Signed-off-by: Phil Sutter Signed-off-by: Pablo Neira Ayuso --- include/expression.h | 1 + include/rule.h | 16 ++++++++++++++++ 2 files changed, 17 insertions(+) (limited to 'include') diff --git a/include/expression.h b/include/expression.h index 68a36e8a..828dbaee 100644 --- a/include/expression.h +++ b/include/expression.h @@ -256,6 +256,7 @@ struct expr { uint64_t expiration; const char *comment; struct stmt *stmt; + uint32_t elem_flags; }; struct { /* EXPR_UNARY */ diff --git a/include/rule.h b/include/rule.h index ddad6d40..a25e99bd 100644 --- a/include/rule.h +++ b/include/rule.h @@ -506,4 +506,20 @@ enum udata_set_type { }; #define UDATA_SET_MAX (__UDATA_SET_MAX - 1) +enum udata_set_elem_type { + UDATA_SET_ELEM_COMMENT, + UDATA_SET_ELEM_FLAGS, + __UDATA_SET_ELEM_MAX, +}; +#define UDATA_SET_ELEM_MAX (__UDATA_SET_ELEM_MAX - 1) + +/** + * enum udata_set_elem_flags - meaning of bits in UDATA_SET_ELEM_FLAGS + * + * @SET_ELEM_F_INTERVAL_OPEN: set element denotes a half-open range + */ +enum udata_set_elem_flags { + SET_ELEM_F_INTERVAL_OPEN = 0x1, +}; + #endif /* NFTABLES_RULE_H */ -- cgit v1.2.3