From: Florian Westphal Date: Fri, 13 Oct 2023 10:37:21 +0000 (+0200) Subject: evaluate: suggest != in negation error message X-Git-Tag: v1.0.9~4 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3035062d4da90de567fad03ea7cd37637c4ba5db;p=thirdparty%2Fnftables.git evaluate: suggest != in negation error message when I run sudo nft insert rule filter FORWARD iifname "ens2f1" ip saddr not @ip_macs counter drop comment \" BLOCK ALL NON REGISTERED IP/MACS \" I get: Error: negation can only be used with singleton bitmask values And even I did not spot the problem immediately. I don't think "not" should have been added, its easily confused with "not equal"/"neq"/!= and hides that this is allegedly a binop. At least *mention* that the commandline is asking for a binary operation here and suggest "!=". Signed-off-by: Florian Westphal --- diff --git a/src/evaluate.c b/src/evaluate.c index c699a9bc..b7ae9113 100644 --- a/src/evaluate.c +++ b/src/evaluate.c @@ -2480,7 +2480,7 @@ static int expr_evaluate_relational(struct eval_ctx *ctx, struct expr **expr) right->dtype->basetype == NULL || right->dtype->basetype->type != TYPE_BITMASK) return expr_binary_error(ctx->msgs, left, right, - "negation can only be used with singleton bitmask values"); + "negation can only be used with singleton bitmask values. Did you mean \"!=\"?"); } switch (right->etype) {