summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorPablo Neira Ayuso <pablo@netfilter.org>2025-02-28 15:57:18 +0100
committerPablo Neira Ayuso <pablo@netfilter.org>2025-03-07 13:56:47 +0100
commitde447e248cce3ca3fd7040c386ac798c35721415 (patch)
tree775a3cac3fd1477723aac9cbff3acc7a081e9a78 /src
parent6d9297f278290888e7e26762ee72ed6afa22a97e (diff)
evaluate: reject unsupported expressions in payload statement for bitfields
The payload statement evaluation pretends that it can handle any expression for bitfields, but the existing evaluation code only knows how to handle value expression. Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'src')
-rw-r--r--src/evaluate.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/evaluate.c b/src/evaluate.c
index c090aebe..d7915ed1 100644
--- a/src/evaluate.c
+++ b/src/evaluate.c
@@ -3351,7 +3351,8 @@ static int stmt_evaluate_payload(struct eval_ctx *ctx, struct stmt *stmt)
mpz_lshift_ui(stmt->payload.val->value, shift_imm);
break;
default:
- break;
+ return expr_error(ctx->msgs, stmt->payload.val,
+ "payload statement for this expression is not supported");
}
masklen = payload_byte_size * BITS_PER_BYTE;