diff options
author | Pablo Neira Ayuso <pablo@netfilter.org> | 2020-01-10 11:53:22 +0100 |
---|---|---|
committer | Pablo Neira Ayuso <pablo@netfilter.org> | 2020-01-16 16:08:16 +0100 |
commit | db5d7dc2bd113dd9c15e83b2e59cb3e4d54c922b (patch) | |
tree | 8d69df72cd8e4539685b039c1377ad774819b4f7 | |
parent | 7def18395d118e22a009de7e2e8de7f77906580b (diff) |
evaluate: better error notice when interval flag is not set on
Users get confused with the existing error notice, let's try a different one:
# nft add element x y { 1.1.1.0/24 }
Error: You must add 'flags interval' to your set declaration if you want to add prefix elements
add element x y { 1.1.1.0/24 }
^^^^^^^^^^
Closes: https://bugzilla.netfilter.org/show_bug.cgi?id=1380
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Acked-by: Phil Sutter <phil@nwl.cc>
-rw-r--r-- | src/evaluate.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/src/evaluate.c b/src/evaluate.c index 34e4473e..e7881543 100644 --- a/src/evaluate.c +++ b/src/evaluate.c @@ -1299,13 +1299,10 @@ static int expr_evaluate_set_elem(struct eval_ctx *ctx, struct expr **expr) !(ctx->set->flags & (NFT_SET_ANONYMOUS | NFT_SET_INTERVAL))) { switch (elem->key->etype) { case EXPR_PREFIX: - return expr_error(ctx->msgs, elem, - "Set member cannot be prefix, " - "missing interval flag on declaration"); case EXPR_RANGE: return expr_error(ctx->msgs, elem, - "Set member cannot be range, " - "missing interval flag on declaration"); + "You must add 'flags interval' to your %s declaration if you want to add %s elements", + set_is_map(ctx->set->flags) ? "map" : "set", expr_name(elem->key)); default: break; } |