From: Pablo Neira Ayuso Date: Tue, 16 Jul 2019 17:49:42 +0000 (+0200) Subject: evaluate: bogus error when refering to existing non-base chain X-Git-Tag: v0.9.2~33 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=1b29e369e88f32c4275141d9c5ab3652e56a5387;p=thirdparty%2Fnftables.git evaluate: bogus error when refering to existing non-base chain add rule ip testNEW test6 jump test8 ^^^^^ Error: invalid verdict chain expression value Signed-off-by: Pablo Neira Ayuso --- diff --git a/src/evaluate.c b/src/evaluate.c index 55cd9d00..69b853f5 100644 --- a/src/evaluate.c +++ b/src/evaluate.c @@ -1988,12 +1988,9 @@ static int stmt_evaluate_verdict(struct eval_ctx *ctx, struct stmt *stmt) if (stmt->expr->chain != NULL) { if (expr_evaluate(ctx, &stmt->expr->chain) < 0) return -1; - if ((stmt->expr->chain->etype != EXPR_SYMBOL && - stmt->expr->chain->etype != EXPR_VALUE) || - stmt->expr->chain->symtype != SYMBOL_VALUE) { - return stmt_error(ctx, stmt, - "invalid verdict chain expression %s\n", - expr_name(stmt->expr->chain)); + if (stmt->expr->chain->etype != EXPR_VALUE) { + return expr_error(ctx->msgs, stmt->expr->chain, + "not a value expression"); } } break;