diff options
author | Pablo Neira Ayuso <pablo@netfilter.org> | 2019-07-16 19:49:42 +0200 |
---|---|---|
committer | Pablo Neira Ayuso <pablo@netfilter.org> | 2019-07-18 20:06:29 +0200 |
commit | 1b29e369e88f32c4275141d9c5ab3652e56a5387 (patch) | |
tree | c198fc39fc4aa962576b33188b5ee4deb015d932 /src/evaluate.c | |
parent | 9f8abc60c260b89a4350848e2e971ce60e642a12 (diff) |
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 <pablo@netfilter.org>
Diffstat (limited to 'src/evaluate.c')
-rw-r--r-- | src/evaluate.c | 9 |
1 files changed, 3 insertions, 6 deletions
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; |