diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/expression.h | 1 | ||||
-rw-r--r-- | include/rule.h | 5 |
2 files changed, 6 insertions, 0 deletions
diff --git a/include/expression.h b/include/expression.h index 6196be58..cbf09b59 100644 --- a/include/expression.h +++ b/include/expression.h @@ -465,6 +465,7 @@ extern int set_to_intervals(struct list_head *msgs, struct set *set, struct expr *init, bool add, unsigned int debug_mask, bool merge, struct output_ctx *octx); +extern void concat_range_aggregate(struct expr *set); extern void interval_map_decompose(struct expr *set); extern struct expr *get_set_intervals(const struct set *set, diff --git a/include/rule.h b/include/rule.h index a7f106f7..c232221e 100644 --- a/include/rule.h +++ b/include/rule.h @@ -372,6 +372,11 @@ static inline bool set_is_interval(uint32_t set_flags) return set_flags & NFT_SET_INTERVAL; } +static inline bool set_is_non_concat_range(struct set *s) +{ + return (s->flags & NFT_SET_INTERVAL) && s->desc.field_count <= 1; +} + #include <statement.h> struct counter { |