diff options
author | Pablo Neira Ayuso <pablo@netfilter.org> | 2020-04-27 18:38:01 +0200 |
---|---|---|
committer | Pablo Neira Ayuso <pablo@netfilter.org> | 2020-04-28 17:32:35 +0200 |
commit | 84829f1f557fb745cb4dbf9fcf05bdb01b23f989 (patch) | |
tree | e6463f18fa197a7d11f77e071464fb46b70f0bd9 /src/evaluate.c | |
parent | f9465cf517ccc88d5ebfa4c7e3cbb2ed1bc899b0 (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/evaluate.c')
-rw-r--r-- | src/evaluate.c | 3 |
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); |