]> git.ipfire.org Git - thirdparty/nftables.git/commitdiff
segtree: fix asan runtime error
authorPablo Neira Ayuso <pablo@netfilter.org>
Sun, 7 Jun 2020 17:52:03 +0000 (19:52 +0200)
committerPablo Neira Ayuso <pablo@netfilter.org>
Sun, 7 Jun 2020 22:26:14 +0000 (00:26 +0200)
ASAN reports:

 segtree.c:387:30: runtime error: variable length array bound evaluates to non-positive value 0

Update array definition to be the set size plus 1.

Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
src/segtree.c

index 266a2b4dc98b5772517c4ab292a864545dfd7baf..b6ca6083ea0b745ec58590a0a0b94ed15bb994fa 100644 (file)
@@ -383,8 +383,8 @@ static bool interval_overlap(const struct elementary_interval *e1,
 static int set_overlap(struct list_head *msgs, const struct set *set,
                       struct expr *init, unsigned int keylen, bool add)
 {
-       struct elementary_interval *new_intervals[init->size];
-       struct elementary_interval *intervals[set->init->size];
+       struct elementary_interval *new_intervals[init->size + 1];
+       struct elementary_interval *intervals[set->init->size + 1];
        unsigned int n, m, i, j;
        int ret = 0;