summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorPablo Neira Ayuso <pablo@netfilter.org>2020-04-27 18:38:01 +0200
committerPablo Neira Ayuso <pablo@netfilter.org>2020-04-28 17:32:35 +0200
commit84829f1f557fb745cb4dbf9fcf05bdb01b23f989 (patch)
treee6463f18fa197a7d11f77e071464fb46b70f0bd9 /src
parentf9465cf517ccc88d5ebfa4c7e3cbb2ed1bc899b0 (diff)
evaluate: fix crash when handling concatenation without map
Fix a crash when map is not specified, e.g. nft add rule x y snat ip addr . port to 1.1.1.1 . 22 Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'src')
-rw-r--r--src/evaluate.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/evaluate.c b/src/evaluate.c
index cad65cfb..8c227eb1 100644
--- a/src/evaluate.c
+++ b/src/evaluate.c
@@ -2924,6 +2924,9 @@ static int stmt_evaluate_nat_map(struct eval_ctx *ctx, struct stmt *stmt)
if (expr_evaluate(ctx, &stmt->nat.addr))
return -1;
+ if (stmt->nat.addr->etype != EXPR_MAP)
+ return 0;
+
data = stmt->nat.addr->mappings->set->data;
datatype_set(data, dtype);